A lightweight graphics loading & management library for Starlet projects with Vulkan and OpenGL engines in mind.
-
Meshes :
parsePlyMesh:ASCII PLY loader (triangles only), reads pos and optional norm/col/texcoordsMeshLoader:loadMesh,uploadMesh,unloadMeshMeshManager:addMesh,createTriangle,createSquare,createCube,findMesh,getMesh
-
Textures
parseBMP: Uncompressed 24-bpp BMP readerTextureLoader:loadTexture2D,loadCubeFaces,uploadTexture2D,uploadTextureCube,unloadTextureTextureManager:addTexture,addCubeTexture,findTexture,getTexture,getTextureID
-
Shaders
ShaderLoader:createProgramFromPaths,unloadShaderShaderManager:createProgramFromPaths,useProgram,getProgramID
- Meshes :
assets/models/*.ply - Textures :
assets/textures/*.bmp - Shaders :
assets/shaders/*.glslManagers support abasePathyou can set to yourassetsfolders.
include(FetchContent)
FetchContent_Declare(starlet_graphics
GIT_REPOSITORY https://github.com/masonlet/starlet-graphics.git
GIT_TAG main
)
FetchContent_MakeAvailable(starlet_graphics)
target_link_libraries(app_name PRIVATE starlet_graphics)