Libretro GL only. Simple OBJ modelviewer.
Go to file
2014-01-12 15:08:15 +01:00
glm Initial commit. 2013-05-10 18:59:30 +02:00
include (PS3) (Probably futile) attempt to get something going with GL ES 1.x 2013-05-18 04:26:47 +02:00
jni (JNI) Change target name 2013-05-18 03:32:24 +02:00
msvc Mingw now uses glext.h as well 2013-05-12 02:35:08 +02:00
.gitignore Initial commit. 2013-05-10 18:59:30 +02:00
blockDiamond.png Can display simple objects with single texture. 2013-05-11 04:01:04 +02:00
boolean.h Revert to previous rpng version 2014-01-12 14:06:39 +01:00
gl.hpp Go through logger interface 2014-01-12 15:07:37 +01:00
glsym.cpp Add GPLv3 headers 2013-11-27 20:24:29 +01:00
libretro_private.h Upgrade libretro header 2014-01-12 13:20:02 +01:00
libretro.cpp Fill in retro_init with logger initialization 2014-01-12 15:08:15 +01:00
libretro.h Upgrade libretro header 2014-01-12 13:20:02 +01:00
link.T Initial commit. 2013-05-10 18:59:30 +02:00
Makefile (OSX) Set min OS version to 10.6 2014-01-03 17:35:25 +01:00
mesh.cpp Add GPLv3 headers 2013-11-27 20:24:29 +01:00
mesh.hpp Add GPLv3 headers 2013-11-27 20:24:29 +01:00
object.cpp Add GPLv3 headers 2013-11-27 20:24:29 +01:00
object.hpp Add GPLv3 headers 2013-11-27 20:24:29 +01:00
README.md Update README. 2013-05-11 15:01:50 +02:00
rpng.cpp Revert to previous rpng version 2014-01-12 14:06:39 +01:00
rpng.h Revert to previous rpng version 2014-01-12 14:06:39 +01:00
shader.cpp Go through logger interface 2014-01-12 15:07:37 +01:00
shader.hpp Add GPLv3 headers 2013-11-27 20:24:29 +01:00
shared.hpp Go through logger interface 2014-01-12 15:07:37 +01:00
simple.mtl Use a default blank texture. 2013-05-12 21:46:08 +02:00
simple.obj Fixups in MTL loader. 2013-05-12 13:20:33 +02:00
texture.cpp Go through logger interface 2014-01-12 15:07:37 +01:00
texture.hpp Add GPLv3 headers 2013-11-27 20:24:29 +01:00
util.hpp Add GPLv3 headers 2013-11-27 20:24:29 +01:00

ModelViewer libretro

This is a simple modelviewer for libretro using the OpenGL interface. It displays basic objects in .obj format. Objects are loaded as ROMs in RetroArch.

retroarch -L libretro-modelviewer.so cool_thing.obj

Controls

Models are rotated using left RetroPad analog axis. The object is scaled with right analog.

Textures/materials

This implementation does not support MTL materials. Instead, a simple texture extension is used.

texture Foo

sets the current texture to Foo.png relative to where the obj was loaded from. All faces declared after will refer to this texture.

Changing resolution

The implementation exposes a libretro core option to change internal resolution. Resolutions can be set to a scale factor of 320x240 (up to 1920x1440).

Example OBJ

This declares a simple textured triangle:

texture blockDiamond
v -1.0 -1.0 0.0
v 1.0 -1.0 0.0
v 0.0 1.0 0.0
vn 0.0 0.0 -1.0
vt 0.0 0.0
vt 1.0 0.0
vt 0.5 1.0

f 1/1/1 2/2/1 3/3/1