|
||
---|---|---|
.. | ||
shaders | ||
CMakeLists.txt | ||
README.md | ||
bootstrap-cmake-linux.sh | ||
embed_shaders.py | ||
main.cc | ||
shader.cc | ||
shader.hh | ||
vcsetup.bat |
README.md
Simple OpenGL viewer
Status
Not yet working.
Supported USD files
USDC(binary), USDA(ascii) and USDZ(zip container)
Requirements
- C++14 compiler
- OpenGL/GLES 3.3 or higher
- cmake
Build
$ mkdir build
$ cd build
$ cmake ..
$ make
Run
$ ./usdz_glview <input.usdz>
Optional: Embed shaders(requires Python)
If you modify shader frag/vert, please update shader source code by running
$ python embed_shaders.py
Alternatively you can use xxd -i input.frag
to generate embeddable shader code.
TODO
- Embed shader codes to C++ source code.
- GeomSubset(per-face material)
- per-face material shading support may take time. Use raytraced viewer(../sdlviewer) for a while if you want to visualize GeomSubset
- Bump/normal mapping
- Need to compute tangent basis
- UDIM texturing
- Subdivision surface
- Animation
- Timesamples animation
- Xform
- GeomMesh(Vertex animation)
- Camera, Light, etc.
- usdSkel
- Vertex skinning
- Morphing(Blend shapes)
- Timesamples animation
Third party libraries
- imgui : MIT license.
- glfw3 : zlib license.