public void Iteration(ref EntityChunk chunk, int index) { if (chunk.TryGetComponent(index, out C_UICanvas canvas)) { canvas.canvas.TriggerMouseEvent(mouseData); } }
public void Iteration(ref EntityChunk chunk, int index) { if (chunk.TryGetComponent(index, out C_Position position)) { position.value.y += (MathUtils.Sin((float)EntygineApp.EngineTime)) * 0.01f; chunk.SetComponent(index, position); } }
public void Iteration(ref EntityChunk chunk, int index) { chunk.TryGetComponent(index, out C_Camera camera); Vector2 floatingSize = (ImGui.GetContentRegionAvail() - imageSize) / 2f; ImGui.SetCursorPos(ImGui.GetCursorPos() + floatingSize); ImGui.Image((IntPtr)camera.cameraData.FinalFramebuffer.ColorBuffer, imageSize, new Vector2(0, 0), new Vector2(1, -1)); }
public void Iteration(ref EntityChunk chunk) { if (!RenderPipelineCore.TryGetContext(out UICanvasRenderData canvasData)) { return; } canvasData.ClearCanvas(); for (int i = 0; i < chunk.Count; i++) { if (chunk.TryGetComponent(i, out C_UICanvas canvas)) { canvasData.AddCanvas(canvas.canvas); } } }
public void Iteration(ref EntityChunk chunk, int index) { if (!chunk.TryGetComponent(index, out C_EditorCamera editorCamera) || !chunk.TryGetComponent(index, out C_Transform transform)) { return; } editorCamera.speed += speedDelta * deltaTime; editorCamera.speed = MathHelper.Clamp(editorCamera.speed, 0, 100); editorCamera.focusDistance -= distDelta * deltaTime * 100; editorCamera.yaw += rotDelta.X * deltaTime * editorCamera.sensitivity; editorCamera.pitch += rotDelta.Y * deltaTime * editorCamera.sensitivity; Vector3 dir = new Vector3( (float)MathHelper.Cos(MathHelper.DegreesToRadians(editorCamera.yaw)) * (float)MathHelper.Cos(MathHelper.DegreesToRadians(editorCamera.pitch)) , (float)MathHelper.Sin(MathHelper.DegreesToRadians(editorCamera.pitch)) , (float)MathHelper.Sin(MathHelper.DegreesToRadians(editorCamera.yaw)) * (float)MathHelper.Cos(MathHelper.DegreesToRadians(editorCamera.pitch))); Vector3 right = Vector3.Normalize(Vector3.Cross(dir, Vector3.UnitY)); Vector3 up = Vector3.Normalize(Vector3.Cross(right, dir)); Vector3 posDeltaRelative = -right * posDelta.X + dir * posDelta.Z + Vector3.UnitY * posDelta.Y; posDeltaRelative *= deltaTime; editorCamera.focusPoint += posDeltaRelative * editorCamera.speed; transform.value = Matrix4.LookAt(editorCamera.focusPoint + dir * editorCamera.focusDistance, editorCamera.focusPoint, up); //DevGizmos.DrawPoint((Vec3f)editorCamera.focusPoint); DevGizmos.DrawLine((Vec3f)editorCamera.focusPoint, (Vec3f)editorCamera.focusPoint + Vec3f.Right); chunk.SetComponent(index, transform); chunk.SetComponent(index, editorCamera); }
public void Iteration(ref EntityChunk chunk) { if (!chunk.TryGetSharedComponent(out SC_RenderMesh renderMesh)) { return; } if (!RenderPipelineCore.TryGetContext(out Rendering.GeometryRenderData geometryData)) { return; } if (geometryData.TryGetRenderMeshGroup(renderMesh.id, out Rendering.MeshRenderGroup group)) { group.ClearTransforms(); for (int i = 0; i < chunk.Count; i++) { if (chunk.TryGetComponent(i, out C_Transform transform)) { group.AddTransform(transform.value); } } } }