23 lines
		
	
	
		
			650 B
		
	
	
	
		
			C
		
	
	
	
		
		
			
		
	
	
			23 lines
		
	
	
		
			650 B
		
	
	
	
		
			C
		
	
	
	
| 
								 | 
							
								#ifndef TRANSFORM_H_
							 | 
						||
| 
								 | 
							
								#define TRANSFORM_H_
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#include <glm/glm.hpp>
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								struct Transform {
							 | 
						||
| 
								 | 
							
								    glm::vec3 translation;
							 | 
						||
| 
								 | 
							
								    glm::vec3 rotation;
							 | 
						||
| 
								 | 
							
								    glm::vec3 scale;
							 | 
						||
| 
								 | 
							
								};
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								namespace TransformControls {
							 | 
						||
| 
								 | 
							
								    void SetPosition(Transform& transform, const glm::vec3& newPosition);
							 | 
						||
| 
								 | 
							
								    void SetRotation(Transform& transform, const glm::vec3& newRotation);
							 | 
						||
| 
								 | 
							
								    void SetScale(Transform& transform, const glm::vec3& newScale);
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    void Translate(Transform& transform, const glm::vec3& translationDelta);
							 | 
						||
| 
								 | 
							
								    void Rotate(Transform& transform, const glm::vec3& rotationDelta);
							 | 
						||
| 
								 | 
							
								    void Scale(Transform& transform, const glm::vec3& scaleDelta);
							 | 
						||
| 
								 | 
							
								}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#endif // TRANSFORM_H_
							 |