{"id":19204756,"url":"https://github.com/hongtae/dkgl","last_synced_at":"2025-05-12T16:12:07.247Z","repository":{"id":27105202,"uuid":"30572734","full_name":"Hongtae/DKGL","owner":"Hongtae","description":"Cross platform 3D Game \u0026 Graphics Library","archived":false,"fork":false,"pushed_at":"2023-04-14T02:22:13.000Z","size":49383,"stargazers_count":21,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"develop","last_synced_at":"2025-03-31T23:51:38.543Z","etag":null,"topics":["3d-game-engine","apple-metal","cross-platform","game-engine","game-framework","graphics-engine","metal-game-engine","vulkan","vulkan-engine","vulkan-game-engine","vulkan-renderer"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Hongtae.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-02-10T03:23:18.000Z","updated_at":"2025-02-10T16:15:44.000Z","dependencies_parsed_at":"2023-02-10T13:02:38.596Z","dependency_job_id":null,"html_url":"https://github.com/Hongtae/DKGL","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Hongtae%2FDKGL","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Hongtae%2FDKGL/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Hongtae%2FDKGL/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Hongtae%2FDKGL/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Hongtae","download_url":"https://codeload.github.com/Hongtae/DKGL/tar.gz/refs/heads/develop","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249909319,"owners_count":21343956,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["3d-game-engine","apple-metal","cross-platform","game-engine","game-framework","graphics-engine","metal-game-engine","vulkan","vulkan-engine","vulkan-game-engine","vulkan-renderer"],"created_at":"2024-11-09T13:09:37.671Z","updated_at":"2025-04-20T14:31:44.707Z","avatar_url":"https://github.com/Hongtae.png","language":"C","readme":"# Project DKGL\nCross-platform 3D Game Library for C\\++.\n\n# DK (Core Library)\nA Lightweighted cross-platform Game Library.  \nThis is low level game library written with C\\++ and supports full multi-threaded, 64-bits environments.\nDKGL supports [Khronos Vulkan](https://www.khronos.org/vulkan/), [Apple Metal](https://developer.apple.com/metal/), [Microsoft DirectX 12](https://msdn.microsoft.com/en-us/library/windows/desktop/dn903821.aspx)\n\nYou can use Python-script to improve productivity.\n\nDK library has two layers of API level.\n##### DKFoundation - `Foundation Classes, Managing System Tasks.`\n* C\\++ Metaprograms (Type Libraries, etc.)\n* Data Collections (Array, Map, Tuples, etc.)\n* Memory Management (SmartPointers, WeakRef, Pool Allocators, etc.)\n* Thread and Synchronize objects (Mutex, Condition, Atomics, etc.)\n* Thread Pool for Asynchronous Operations\n* High Resolution Timer\n* Run-Loop System\n* Function Interface for Operations, Invocations, Functors\n* Data and Buffer objects\n* Rational for High-Precision Calculation\n* Unicode String (UTF-8,16,32)\n* File, Directory and Stream (including File-Mapping)\n* Date Time class (ISO-8601 support)\n* Endianness Byte Order Utilities\n* Logging Interface\n* Error Handler (with Stack-Tracer)\n* XMLParser (DOM, SAX)\n* Hash Library (SHA1, SHA2, etc.)\n* Zip Archiver, Unarchiver\n\n##### DKFramework - `Game Framework for Application`\n* Application Entry Point\n* Collision Detection Utilities\n* Convex Decomposition\n* Physics Constraints\n* Dynamics Simulator\n* Node Based Scene Graph Management\n* Curve Interpolation (Spline, B-Spline, Bezier, etc.)\n* Data Marshalling\n* Animation (able to Retargeting, Blending)\n* Text Font (TTF, PS, etc.)\n* 3D Audio\n* Mathematics (Matrices, Vectors, Quaternion, etc.)\n* Graphics / Compute Interface (Vulkan, Metal, DirectX12)\n* Resource Management\n* Material and Shader Management\n* Window, Screen Management\n* Voxel, Storage, Polygonizer Interfaces\n\nEach framework designed for modular, cross-platform.  \nYou can use any classes without any dependencies.\nYou are also able to use single project for multiple-platforms without\nany modifictations that platform dependent.\n\nYou can use DK with other UI Tools also. (MFC, Cocoa, wxWidgets, etc.)\n\n### Running platforms.\n- Windows 10 or later. (DirectX12 or Vulkan Required)\n- Mac OS X 10.11 or later. (Metal Required)\n- iOS 9.0 or later. (Metal Required)\n\nFor other platforms including linux or android, You can implement\nDK interfaces to use DK library with other GUI OSes.\n\u003e See interface header files in `DKFramework/Interface`.  \n\u003e You can see implementations for other OSes in `DKFramework/Private`\n\n## Build Environments\n- Visual Studio 2019 for Windows\n- Xcode7 for Mac, iOS\n- C\\++17 compiler\n\n## Included External Libraries\n- [OpenAL-soft-1.15.1](https://github.com/kcat/openal-soft)\n    - This is LGPL licensed, configured to build **dynamic-library**.\n    - Win32, Android only.\n    - Mac OS X, iOS use Apple's OpenAL framework.\n- [BulletPhysics-2.82](https://github.com/bulletphysics/bullet3)\n- [FreeType-2.9](https://freetype.org/)\n- [bzip2-1.0.6](http://sourceware.org/bzip2/)\n- [jpeg-9](https://ijg.org/)\n- [libFLAC-1.2.1](https://xiph.org/flac/)\n- [libogg-1.3.1](https://xiph.org/ogg/)\n- [libpng-1.5.10](https://github.com/glennrp/libpng)\n- [libvorbis-1.3.3](https://xiph.org/vorbis/)\n- [libxml2-2.9.0](http://www.xmlsoft.org/)\n- [lz4-r131](https://github.com/lz4/lz4)\n- [zlib-1.2.7](https://github.com/madler/zlib)\n- [Zstd-1.3.8](https://github.com/facebook/zstd)\n- [LZMA-19.00](https://www.7-zip.org/sdk.html)\n\n## Author\nHongtae Kim, (tiff2766@gmail.com)  \n\n\n## Liense\n[BSD-3 License](http://opensource.org/licenses/BSD-3-Clause)\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhongtae%2Fdkgl","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhongtae%2Fdkgl","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhongtae%2Fdkgl/lists"}