https://github.com/lnk2past/hinopio
educational toy project for compute shaders
https://github.com/lnk2past/hinopio
compute-shader cpp cpp20 gpgpu opengl
Last synced: 3 months ago
JSON representation
educational toy project for compute shaders
- Host: GitHub
- URL: https://github.com/lnk2past/hinopio
- Owner: Lnk2past
- Created: 2025-01-26T18:15:40.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-01-27T16:56:23.000Z (over 1 year ago)
- Last Synced: 2025-03-22T04:12:35.945Z (over 1 year ago)
- Topics: compute-shader, cpp, cpp20, gpgpu, opengl
- Language: C++
- Homepage:
- Size: 124 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Hinopio
This is an educational endeavor into learning a bit more about OpenGL and compute shaders using C++20. Some goals, which will absolutely change as I experiement and mess around with it all:
* Classes/wrappers for defining compute shaders
* I want to be able to create a shader object and interface with that object for compiling, loading data, creating buffers, reading from buffers, etc.
* Ideally would be able to template types as much as I can
* Unclear how to do this in GLSL yet
* Learn about and integrate [shader-slang](https://shader-slang.org/)
* Who knows? I don't know anything about this stuff yet, so I don't know what I don't know yet.

## Development
Devcontainer provided; just launch a Codespace or local devcontainer!
### Build
This project uses Conan + CMake for dependency management and builds. You will need to install dependencies via Conan and then build via CMake (there are VSCode build tasks for these!):
```shell
# install dependencies
conan install . --build=missing
# load preset
cmake --preset conan-release
# build code
cmake --build --preset conan-release
```
## Examples
Check out [`examples`](./examples) for some basic usage. Need to script building these...