started adding a translator

This commit is contained in:
unknown
2026-08-25 15:18:47 -05:00
parent 0c96d5cbdb
commit 03100e4a1a
8 changed files with 63 additions and 4 deletions
+3 -1
View File
@@ -118,7 +118,7 @@
<Link> <Link>
<SubSystem>Console</SubSystem> <SubSystem>Console</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation> <GenerateDebugInformation>true</GenerateDebugInformation>
<AdditionalLibraryDirectories>libs\lib\x64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories> <AdditionalLibraryDirectories>lds\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<AdditionalDependencies>SDL3.lib;%(AdditionalDependencies)</AdditionalDependencies> <AdditionalDependencies>SDL3.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link> </Link>
<Manifest> <Manifest>
@@ -145,11 +145,13 @@
</ItemDefinitionGroup> </ItemDefinitionGroup>
<ItemGroup> <ItemGroup>
<ClCompile Include="Renderer.cpp" /> <ClCompile Include="Renderer.cpp" />
<ClCompile Include="transl.cpp" />
<ClCompile Include="window.cpp" /> <ClCompile Include="window.cpp" />
<ClCompile Include="type.h" /> <ClCompile Include="type.h" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<ClInclude Include="Renderer.h" /> <ClInclude Include="Renderer.h" />
<ClInclude Include="transl.h" />
<ClInclude Include="Variant.h" /> <ClInclude Include="Variant.h" />
</ItemGroup> </ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
+17
View File
@@ -21,5 +21,22 @@
<ClCompile Include="type.h"> <ClCompile Include="type.h">
<Filter>Header Files</Filter> <Filter>Header Files</Filter>
</ClCompile> </ClCompile>
<ClCompile Include="Renderer.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="transl.cpp">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include="Renderer.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="Variant.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="transl.h">
<Filter>Header Files</Filter>
</ClInclude>
</ItemGroup> </ItemGroup>
</Project> </Project>
+2 -1
View File
@@ -1,8 +1,9 @@
#include "Renderer.h" #include "Renderer.h"
#include "Variant.h" #include "Variant.h"
#include <iostream>
void Rena3D_Renderer::InitTree() { void Rena3D_Renderer::InitTree() {
std::cout << "tree inited!" << std::endl;
} }
void Rena3D_Renderer::RenderFrame(r3d_Variant::RenderTime timeSignature) { void Rena3D_Renderer::RenderFrame(r3d_Variant::RenderTime timeSignature) {
+2
View File
@@ -1,6 +1,8 @@
#pragma once #pragma once
#include <iostream>
struct r3d_Variant { struct r3d_Variant {
using RenderTime = double; using RenderTime = double;
using NotificationSignal = unsigned int; using NotificationSignal = unsigned int;
using String = std::string;
}; };
+7
View File
@@ -0,0 +1,7 @@
#include "transl.h"
#include "Variant.h"
void Translator::RegisterNewLanguage(r3d_Variant::String name) {
std::unordered_map<r3d_Variant::String, r3d_Variant::String> newLanguage;
languages.insert({ name, newLanguage });
}
+16
View File
@@ -0,0 +1,16 @@
#pragma once
#define PREPROC_TRANSLATOR_ENABLE
#define PREPROC_TRANSLATOR_LANG "EN_US"
#include "Variant.h"
#include <iostream>
#include <unordered_map>
class Translator {
public:
std::unordered_map<r3d_Variant::String, std::unordered_map<r3d_Variant::String, r3d_Variant::String>> languages;
r3d_Variant::String GetTransString(r3d_Variant::String key);
void RegisterTranslatableObject(r3d_Variant::String key, r3d_Variant::String language, r3d_Variant::String value);
void RegisterNewLanguage(r3d_Variant::String name);
};
+1
View File
@@ -16,5 +16,6 @@ struct Types {
using uint_32 = unsigned int; using uint_32 = unsigned int;
using vec2 = _v2; using vec2 = _v2;
using BOOLEAN = bool; using BOOLEAN = bool;
}; };
+15 -2
View File
@@ -4,9 +4,12 @@
#include <iostream> #include <iostream>
static SDL_Window* window = NULL; static SDL_Window* window = NULL;
static SDL_Renderer* renderer = NULL; static SDL_Renderer* renderer = NULL;
static Types::vec2 windowDimensions(1366, 768); static Types::vec2 windowDimensions(800, 600);
static Rena3D_Renderer r3dgpu; static Rena3D_Renderer r3dgpu;
Uint64 lastTime = SDL_GetPerformanceCounter();
r3d_Variant::RenderTime deltaTime = 0.0;
int main(Types::uint_32 argc, char* argv) { int main(Types::uint_32 argc, char* argv) {
if (!SDL_Init(SDL_INIT_VIDEO)) { if (!SDL_Init(SDL_INIT_VIDEO)) {
std::cerr << "cannot init sdl window: " << SDL_GetError() << std::endl; std::cerr << "cannot init sdl window: " << SDL_GetError() << std::endl;
@@ -45,10 +48,20 @@ int main(Types::uint_32 argc, char* argv) {
} }
} }
Uint64 curTime = SDL_GetPerformanceCounter();
deltaTime = (r3d_Variant::RenderTime)(curTime - lastTime) / (r3d_Variant::RenderTime)SDL_GetPerformanceFrequency();
SDL_SetRenderDrawColor(renderer, 0, 0, 0, 255); SDL_SetRenderDrawColor(renderer, 0, 0, 0, 255);
SDL_RenderClear(renderer); SDL_RenderClear(renderer);
r3dgpu.RenderFrame(0); lastTime = curTime;
if (deltaTime > 0.1) {
deltaTime = 0.1;
}
r3dgpu.RenderFrame(deltaTime);
SDL_RenderPresent(renderer); SDL_RenderPresent(renderer);
} }