# Changes -> 0.5.1
- 3ds - Remove Gfx values that are present in Backend Tamplate - Move to default Palladium Namespace - Set the Input Flags - Desktop - Move to PD Namespace - Comment out old keyboard stuff - HidDriver needs a rewrite but is functional enough - Core - Add u128 class (only used in input driver so far - Drivers (Core) - Move Gfx to PD namespace - Move Vertex/Index Pos and Projection Mtx to Gfx template - Add Keyboard support with u128 to Hid - Add a Update func if no hiddriver is specified (to prevent crashes when requestign inputs) - Image - Add RGBA -> BGRA support (used in windows bitmaps iirc) - Lithium - Add Vertex/Index counters to drawlist - Add a LoadTTF from Mem func and let the loadfile func use PD::IO::LoadFile2Mem (looks cleaner) - Add LoadDefaultFont (which loads one of the integrated fonts if the PD_LI_INCLUDE_FONTS flag was passed on palaldium build) !!! Note that there are no fonts integrated yet due to i dont know how to handle licensing... - UI7 - Add MouseLeft support to Input handler - Use xy coords of the Viewport to create Menus inside it - Get num of Vertices/Indices out of FinalDrawList - Add some Palladium Info to metrics Menu - Readd Compiler string - pdfm - New tool that creates fonts.cpp/fonts.hpp
This commit is contained in:
		| @@ -40,8 +40,6 @@ class LinearAlloc : public Allocator<T> { | ||||
|   T* Allocate(size_t n) override { return (T*)linearAlloc(n * sizeof(T)); } | ||||
|   void Deallocate(T* ptr) { linearFree(ptr); } | ||||
| }; | ||||
|  | ||||
| namespace Li { | ||||
| class GfxC3D : public GfxDriver { | ||||
|  public: | ||||
|   GfxC3D() : GfxDriver("Citro3D") {} | ||||
| @@ -63,16 +61,9 @@ class GfxC3D : public GfxDriver { | ||||
|  | ||||
|   Vec<Vertex, LinearAlloc<Vertex>> VertexBuffer; | ||||
|   Vec<u16, LinearAlloc<u16>> IndexBuffer; | ||||
|   size_t CurrentVertex = 0; | ||||
|   size_t CurrentIndex = 0; | ||||
|   Mat4 Projection; | ||||
|   int pLocProjection = 0; | ||||
|   DVLB_s* ShaderCode; | ||||
|   shaderProgram_s Shader; | ||||
|   C3D_AttrInfo ShaderInfo; | ||||
|   // Stats oder so IDNK zu lange her | ||||
|   PD::u32 NumVtx; | ||||
|   PD::u32 NumIdx; | ||||
| }; | ||||
| }  // namespace Li | ||||
| }  // namespace PD | ||||
| @@ -25,6 +25,9 @@ SOFTWARE. | ||||
| #include <pd-3ds/bknd-gfx.hpp> | ||||
|  | ||||
| /// @brief Shader Code (Unused as i dont want to use libpicasso here (yet)) | ||||
| /// Update: Picasso breaks the linearRam or ram for somereason | ||||
| /// as far as i found out loading anything into linear ram after | ||||
| /// using libpicasso to compile a shader leads into a system freeze | ||||
| const char* LIShaderCTR = R"( | ||||
| ; LI7 Shader | ||||
| ; Constants | ||||
| @@ -70,7 +73,6 @@ unsigned char li_shader[] = { | ||||
| size_t li_shader_size = 0x124; | ||||
|  | ||||
| namespace PD { | ||||
| namespace Li { | ||||
| GPU_TEXCOLOR GetTexFmt(Texture::Type type) { | ||||
|   if (type == Texture::RGBA32) | ||||
|     return GPU_RGBA8; | ||||
| @@ -249,5 +251,4 @@ PD::Li::Texture::Ref GfxC3D::LoadTex(const std::vector<PD::u8>& pixels, int w, | ||||
|             << std::endl; | ||||
|   return res; | ||||
| } | ||||
| }  // namespace Li | ||||
| }  // namespace PD | ||||
| @@ -28,6 +28,8 @@ SOFTWARE. | ||||
|  | ||||
| namespace PD { | ||||
| Hid3DS::Hid3DS() : HidDriver("Hid3DS") { | ||||
|   this->Flags |= Flags_HasTouch; | ||||
|   this->Flags |= FLags_HasGamepad; | ||||
|   pBinds[KEY_A] = A; | ||||
|   pBinds[KEY_B] = B; | ||||
|   pBinds[KEY_X] = X; | ||||
|   | ||||
| @@ -30,7 +30,7 @@ void Init(void* data) { | ||||
|   // Dekstop Init Stage | ||||
|   // First use default OS Driver | ||||
|   PD::OS::Init(); | ||||
|   PD::Li::Gfx::Init(PD::Li::GfxC3D::New()); | ||||
|   PD::Gfx::Init(PD::GfxC3D::New()); | ||||
|   PD::Hid::Init(PD::Hid3DS::New()); | ||||
| } | ||||
| }  // namespace PD | ||||
		Reference in New Issue
	
	Block a user