mirror of
https://github.com/aharabada/glitchy-engine-beef.git
synced 2026-09-05 21:01:52 +00:00
Many ecs, component and editor changes
This commit is contained in:
@@ -22,11 +22,30 @@ namespace GlitchyEngine.World
|
||||
{
|
||||
//TransformSystem.Update(_ecsWorld);
|
||||
|
||||
for (var (entity, transform, sprite) in _ecsWorld.Enumerate<SimpleTransformComponent, SpriterRendererComponent>())
|
||||
{
|
||||
Renderer2D.DrawQuad(transform.Transform, sprite.Color);
|
||||
}
|
||||
Camera* primaryCamera = null;
|
||||
Matrix* primaryCameraTransform = null;
|
||||
|
||||
for (var (entity, transform, camera) in _ecsWorld.Enumerate<SimpleTransformComponent, CameraComponent>())
|
||||
{
|
||||
if (camera.Primary)
|
||||
{
|
||||
primaryCamera = &camera.Camera;
|
||||
primaryCameraTransform = &transform.Transform;
|
||||
}
|
||||
}
|
||||
|
||||
// Sprite renderer
|
||||
if (primaryCamera != null)
|
||||
{
|
||||
Renderer2D.BeginScene(*primaryCamera, *primaryCameraTransform);
|
||||
|
||||
for (var (entity, transform, sprite) in _ecsWorld.Enumerate<SimpleTransformComponent, SpriterRendererComponent>())
|
||||
{
|
||||
Renderer2D.DrawQuad(transform.Transform, sprite.Color);
|
||||
}
|
||||
|
||||
Renderer2D.EndScene();
|
||||
}
|
||||
}
|
||||
|
||||
public Entity CreateEntity(String name = "")
|
||||
@@ -44,5 +63,22 @@ namespace GlitchyEngine.World
|
||||
{
|
||||
_ecsWorld.RemoveEntity(entity.Handle);
|
||||
}
|
||||
|
||||
private uint32 ViewportWidth, ViewportHeight;
|
||||
|
||||
/// Sets the size of the viewport into which the scene will be rendered.
|
||||
public void OnViewportResize(uint32 width, uint32 height)
|
||||
{
|
||||
ViewportWidth = width;
|
||||
ViewportHeight = height;
|
||||
|
||||
for (var (entity, cameraComponent) in _ecsWorld.Enumerate<CameraComponent>())
|
||||
{
|
||||
if (!cameraComponent.FixedAspectRatio)
|
||||
{
|
||||
cameraComponent.Camera.SetViewportSize(width, height);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user