, chunk_range(4) {
EntityModel::Buffer buf;
{
- CuboidShape shape({{ -0.25f, -0.5f, -0.25f }, { 0.25f, 0.5f, 0.25f }});
+ AABB bounds{{ -0.25f, -0.5f, -0.25f }, { 0.25f, 0.5f, 0.25f }};
+ CuboidShape shape(bounds);
shape.Vertices(buf, 1.0f);
buf.colors.resize(shape.VertexCount(), { 1.0f, 1.0f, 0.0f });
models[0].Update(buf);
+ skeletons[0].Bounds(bounds);
+ skeletons[0].SetNodeModel(&models[0]);
}
{
- CuboidShape shape({{ -0.5f, -0.25f, -0.5f }, { 0.5f, 0.25f, 0.5f }});
+ AABB bounds{{ -0.5f, -0.25f, -0.5f }, { 0.5f, 0.25f, 0.5f }};
+ CuboidShape shape(bounds);
buf.Clear();
shape.Vertices(buf, 2.0f);
buf.colors.resize(shape.VertexCount(), { 0.0f, 1.0f, 1.0f });
models[1].Update(buf);
+ skeletons[1].Bounds(bounds);
+ skeletons[1].SetNodeModel(&models[1]);
}
{
- StairShape shape({{ -0.5f, -0.5f, -0.5f }, { 0.5f, 0.5f, 0.5f }}, { 0.4f, 0.4f });
+ AABB bounds{{ -0.5f, -0.5f, -0.5f }, { 0.5f, 0.5f, 0.5f }};
+ StairShape shape(bounds, { 0.4f, 0.4f });
buf.Clear();
shape.Vertices(buf, 3.0f);
buf.colors.resize(shape.VertexCount(), { 1.0f, 0.0f, 1.0f });
models[2].Update(buf);
+ skeletons[2].Bounds(bounds);
+ skeletons[2].SetNodeModel(&models[2]);
}
timer.Start();
e.Position(chunk, pos);
e.Bounds({ { -0.5f, -0.5f, -0.5f }, { 0.5f, 0.5f, 0.5f } });
e.WorldCollidable(true);
- e.GetModel().SetNodeModel(&models[rand() % 3]);
+ skeletons[rand() % 3].Instantiate(e.GetModel());
e.AngularVelocity(rot);
Controller *ctrl;
if (rand() % 2) {