<commit_before>#pragma once
#include "Core/Math/Math.h"
#include "Scene/Component.h"

namespace Blueshift {
	namespace Scene {

		class SceneGraph;
		class TransformableComponent : public Component {
		protected:
			Core::Math::Vector3f position;
			Core::Math::Quaternionf orientation;
			Core::Math::Matrix4f world_transform;
			bool local_dirty = true;

			friend class SceneGraph;
		public:
			TransformableComponent(SceneGraph* scene, Object* object);

			inline virtual void SetPosition(const Core::Math::Vector3f& Position) {<commit_msg>Somehow forgot this in a previous commit; updated TransformableComponent to initialize its internals.<commit_after>#pragma once
#include "Core/Math/Math.h"
#include "Scene/Component.h"

namespace Blueshift {
	namespace Scene {

		class SceneGraph;
		class TransformableComponent : public Component {
		protected:
			Core::Math::Vector3f position = Core::Math::Vector3f(0.0f, 0.0f, 0.0f);
			Core::Math::Quaternionf orientation = Core::Math::Quaternionf(0.0f, 0.0f, 0.0f, 1.0f);
			Core::Math::Matrix4f world_transform = Core::Math::IdentityMatrix4f;
			bool local_dirty = true;

			friend class SceneGraph;
#pragma pack(push, 8)
			struct serialized {
				Component::serialized component;
			};
#pragma pack(pop)
		public:
			TransformableComponent(SceneGraph* scene, Object* object);

			inline virtual void SetPosition(const Core::Math::Vector3f& Position) {
{'fraction_non_alphanumeric': 0.10968660968660969, 'fraction_numerical': 0.01638176638176638, 'mean_word_length': 5.357466063348416, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3013423', 'n_tokens_mistral': 487, 'n_tokens_neox': 420, 'n_words': 109}