public static void RenderBoardTiles( EntityManager entityManager, Entity boardEntity, RenderGameObjects renderGameObjects) { var tileBuffer = entityManager.GetBuffer <BoardTileEntry>(boardEntity); for (int i = 0; i < tileBuffer.Length; i++) { var boardTile = tileBuffer[i]; var tile = entityManager.GetComponentData <Tile>(boardTile.Entity); var renderer = entityManager.GetComponentObject <ManagedRenderer>(boardTile.Entity); var renderTile = renderer.Value.GetComponent <RenderTile>(); var position = boardTile.BoardPosition.ToWorldPosition(); var rotation = boardTile.CardinalRotation.ToWorldRotation(); entityManager.SetComponentData(boardTile.Entity, new Translation { Value = position }); entityManager.SetComponentData(boardTile.Entity, new Rotation { Value = rotation }); renderTile.SetElementalMaterials(renderGameObjects, tile); renderer.Value.transform.SetPositionAndRotation(position, rotation); } }
public static void RenderBoardWizards( EntityManager entityManager, Entity boardEntity, RenderGameObjects renderGameObjects) { var player1WizardBuffer = entityManager.GetBuffer <BoardPlayer1WizardEntry>(boardEntity); var player2WizardBuffer = entityManager.GetBuffer <BoardPlayer2WizardEntry>(boardEntity); for (var i = 0; i < player1WizardBuffer.Length; i++) { var boardWizard = player1WizardBuffer[i]; var renderer = entityManager.GetComponentObject <ManagedRenderer>(boardWizard.Entity); var renderWizard = renderer.Value.GetComponent <RenderWizard>(); var position = boardWizard.BoardPosition.ToWorldPosition(); var rotation = Quaternion.identity; entityManager.SetComponentData(boardWizard.Entity, new Translation { Value = position }); entityManager.SetComponentData(boardWizard.Entity, new Rotation { Value = rotation }); renderWizard.SetMaterialForPlayerIndex(renderGameObjects.Team1Material, renderGameObjects.Team2Material, 0); renderWizard.transform.SetPositionAndRotation(position, rotation); } for (var i = 0; i < player2WizardBuffer.Length; i++) { var boardWizard = player2WizardBuffer[i]; var renderer = entityManager.GetComponentObject <ManagedRenderer>(boardWizard.Entity); var renderWizard = renderer.Value.GetComponent <RenderWizard>(); var position = boardWizard.BoardPosition.ToWorldPosition(); var rotation = Quaternion.identity; entityManager.SetComponentData(boardWizard.Entity, new Translation { Value = position }); entityManager.SetComponentData(boardWizard.Entity, new Rotation { Value = rotation }); renderWizard.SetMaterialForPlayerIndex(renderGameObjects.Team1Material, renderGameObjects.Team2Material, 1); renderWizard.transform.SetPositionAndRotation(position, rotation); } }
public static void RenderBoardDragons( EntityManager entityManager, Entity boardEntity, RenderGameObjects renderGameObjects) { var dragonBuffer = entityManager.GetBuffer <BoardDragonEntry>(boardEntity); for (var i = 0; i < dragonBuffer.Length; i++) { var boardDragon = dragonBuffer[i]; var renderer = entityManager.GetComponentObject <ManagedRenderer>(boardDragon.Entity); var position = boardDragon.BoardPosition.ToWorldPosition(); var rotation = Quaternion.identity; entityManager.SetComponentData(boardDragon.Entity, new Translation { Value = position }); entityManager.SetComponentData(boardDragon.Entity, new Rotation { Value = rotation }); renderer.Value.transform.SetPositionAndRotation(position, rotation); } }
public void SetElementalMaterial(RenderGameObjects renderGameObjects, MeshRenderer meshRenderer, in Element element)