public static CRenderObject CreateObject(params object[] args) { EWormParts type = (EWormParts)args[0]; string path = getPrefabPath(type); if (string.IsNullOrEmpty(path)) { return(null); } Object prefab = Resources.Load(path); GameObject go = (GameObject)GameObject.Instantiate(prefab); if (go == null) { return(null); } List <object> list = args.ToList(); list.RemoveRange(0, 1); object[] restArgs = list.ToArray(); Transform dad = WorldMan.Inst.GetParent(type); string name = string.Format("{0} {1}", type, dad.childCount); go.transform.SetParent(dad); go.name = name; go.SetActive(false); CRenderObject obj = go.GetComponent <CRenderObject>(); obj.Init(restArgs); return(obj); }
public Axon(float weight, Synapse synapse) { mWeight = weight; mSynapse = synapse; size = 0.001f * Globals.scale; if ((Globals.renderSwitch & EWormParts.axon) != 0) { render = ResManager.CreateObject(EWormParts.axon, Color.red, size); } }
public CMassPoint(float mass, Vector3 pos) : base(pos) { this.mass = mass; vel.Set(0, 0, 0); force.Set(0, 0, 0); if ((Globals.renderSwitch & EWormParts.point) != 0) { render = ResManager.CreateObject(EWormParts.point, Color.black, 0.02f * Globals.scale); } }
public Axon(float weight, Synapse synapse) { mWeight = weight; mSynapse = synapse; sizeNormal = Globals.axon_normal; sizeSelect = Globals.axon_selected; if ((Globals.renderSwitch & EWormParts.axon) != 0) { render = ResManager.CreateObject(EWormParts.axon, Color.red, sizeNormal); } }
public CSpring(float len, float stiffness, float friction, CMassPoint p1, CMassPoint p2) : base(p1, p2) { length = len; if (len <= 0) { length = (p1.pos - p2.pos).magnitude * Mathf.Abs(len); } this.stiffness = stiffness; this.friction = friction; if ((Globals.renderSwitch & EWormParts.spring) != 0) { render = ResManager.CreateObject(EWormParts.spring, Color.gray, 0.005f * Globals.scale); } }
public Neuron(string name, Vector3 pos, float threshold, float ratioX, float ratioY, float ratioZ, char type, int clr_index) : base(threshold, name, pos) { mType = type; mRatioX = ratioX; mRatioY = ratioY; mRatioZ = ratioZ; mColorIdx = clr_index; mColor = Globals.colors[clr_index]; mColorPseSel = Color.red; mColorSel = Color.green; size = 0.005f * Globals.scale; if ((Globals.renderSwitch & EWormParts.neuron) != 0) { render = ResManager.CreateObject(EWormParts.neuron, Color.red, size); } }
public Muscle(float strength, CMassPoint p1, CMassPoint p2, string name) : base(1.0f, name, new Vector3(0, 0, 0)) { this.strength = strength; connector.status = 1; connector.p1 = p1; connector.p2 = p2; //mclass_id = i_mclass_id; length = (p1.pos - p2.pos).magnitude; //synapse->name = i_name; drawPos = (p1.pos * 2 + p2.pos * 98) / 100; color = new Color(0.2f, 0.2f, 0.2f); if ((Globals.renderSwitch & EWormParts.muscle) != 0) { render = ResManager.CreateObject(EWormParts.muscle, color, 0.05f * Globals.scale); } }