/// <summary> /// </summary> /// <param name="name"> /// </param> /// <param name="size"> /// </param> /// <param name="scene"> /// </param> /// <param name="updatable"> /// </param> /// <returns> /// </returns> public static Mesh CreateBox(string name, double size, Scene scene, bool updatable = false) { var box = new Mesh(name, scene); var vertexData = VertexData.CreateBox(size); vertexData.applyToMesh(box, updatable); return(box); }
/// <summary> /// </summary> /// <param name="scene"> /// </param> public BoundingBoxRenderer(Scene scene) { this._scene = scene; this._colorShader = new ShaderMaterial( "colorShader", scene, "color", new ShaderMaterialOptions { attributes = new Array <string>("position"), uniforms = new Array <string>("worldViewProjection", "color") }); var engine = this._scene.getEngine(); var boxdata = VertexData.CreateBox(1.0); this._vb = new VertexBuffer(engine, boxdata.positions, VertexBufferKind.PositionKind, false); this._ib = engine.createIndexBuffer(new Array <int>(0, 1, 1, 2, 2, 3, 3, 0, 4, 5, 5, 6, 6, 7, 7, 4, 0, 7, 1, 6, 2, 5, 3, 4)); }
public override VertexData _regenerateVertexData() { return(VertexData.CreateBox(this.size)); }
public Box(int id, Scene scene, double size, bool canBeRegenerated = false, Mesh mesh = null) : base(id, scene, VertexData.CreateBox(size), canBeRegenerated, mesh) { this.size = size; }