this item, is a communication node, to pass properties from object to object,
Antenna edits Property FaceProperty_01 of cubic = “command”
cubic sees change from “empty” to command, check property FaceIndex_01 = 2
Cast ray from 2
Ray hits “Cubic 2” on face 05
cubic 1 changes cubic 2 property-FaceProperty_05 to “command”
I would really like to help you. I have the impression this could be a interesting project. But I do not understand what you want to do. Unfortunately this is essential for any help.
So I would appreciate if you would describe what you want to achieve in whole sentences in clear words. It can even be a list.
You see yourself as a visual thinker so you can prepare some sketches explaining what you want (think of it as story board).
This is strongly recommended not just for us. It is recommended for you, that you do not forget what you want. Finally you would need this to explain what your game is all about.
If you are not able to describe what you want, you will never get it. This is the truth of all projects.
Ok this item, is for inter object communication, in a 3d grid.
The cube has a list the list is called “pairs”,
so Face 1 is like a electronic terminal that has a wire to Face 02
So the ray casting, is used to get which face would be touching the face that is “charged” with a property,
in this case, since I do not have the property system working, it uses hostID.
the hostID is the face that was struck, and it uses this to find the pair, and then cast a ray from the opposite end of the pair,
And the game Wrectified, the enemies are essentially a system of 3d logic nodes, with sensors, controllers and actuators,
so shooting a “targeting sensor” with “power down” will not allow it to work for X frames, so the machine is blind,
so Components = actuators and sensors
Component cubes and other shapes - attachment points for cubes and components,
so think lego inventors kit,
So this is my old collision flag system, rather CPU heavy though
this is not, I have it set to 1 fps so I can see what is happening
Let me analyze this. Let me know if my interpretation is right or not.
This gives me two general information:
A) objects are communicating with each other
B) they are placed in a grid of three dimensions
This is a a very low level information currently not very helpful. Maybe later.
Question: what is cube?
A list of what? I guess pairs. But what pairs?
Now we have two objects:
Face 1 communicating with Face 02.
Now some wild guesses: You labeled them Face. So they might be part of something else. An object maybe?
So the objects (where the faces belong) communicate to each other?
Ok lower level again. I think this is where you have the problem (I guess that because I read your other threads).
What does it tell me:
You want to cast a ray to detect the other object especially a face of it. (here a sketch would be useful).
Question: with touching you mean that faces are placed near each other? like one lego block is put on another?
How far should they be? Can they be twisted?
I guess from above (3D grid) the objects are (nearly) touching without twists (or 90 degree on the plane they are touching). Again a sketch would be nice.
So this all belongs in how objects identify other objects to communicate with.
What means “charged with a property”? Is that the communication?
hostId is the face? You mean the face that you discovered with ray?
This is confusing.
You evaluate a ray from the center of a face (within a mesh) along it’s normal. When you find another object, you look for the face the ray would cross. Then you remember the face you send from and you remember the face you discovered.
This should be possible. The a combination of object and polyProxy should be pretty unique.
I guess this is what you mean with the above list of pairs.
For double check you do the same from the other face.
What if it does not hit the other face? I guess you want to have the faces to be aligned in opposite directions (180°) relative to each other. This can be indeed a method to find the corresponding objects.
This is unfortunately just confusing. I can’t guess what you mean with it. So I ignore it.
??? Does this sentence makes any sense to you?
You want two objects to communicate with each other.
The objects identify each other by placing a face to the other object.
When these faces touch (or are near) and facing opposite directions, both objects are connected.
The idea with the ray from the middle of one face is a good solution. It covers the situation that at least 50% of the face is covered by the other face. It might get problems when the faces have different sizes.
What faces can be used for detecting an communication partner? (Maybe identified by a material?)
What faces of the communication partner can be detected? (all or faces with a specific material only?)
So, right now, if I hit a face with a ray (like face 1) it looks up the material Sensor_01 and then uses that to extract “01”
I turn this into a integer,
then it looks up the pair list,
Id = 1 so pair = “2” in this case,
So 2 is the hostID set to the next cube. so that cube can then send the signal
the file above was accident, I accidently overwrote the .blend with a old version