mirror of
https://github.com/hrydgard/ppsspp.git
synced 2024-11-24 22:10:01 +00:00
A PSP emulator for Android, Windows, Mac and Linux, written in C++. Want to contribute? Join us on Discord at https://discord.gg/5NJB6dD or just send pull requests / issues. For discussion use the forums at forums.ppsspp.org.
android | ||
audio | ||
base | ||
data | ||
ext | ||
file | ||
gfx | ||
gfx_es2 | ||
image | ||
input | ||
json | ||
math | ||
midi | ||
net | ||
profiler | ||
ui | ||
util | ||
.gitignore | ||
Android.mk | ||
LICENSE.TXT | ||
native.vcxproj | ||
native.vcxproj.filters | ||
README.md |
native
This is my library of stuff that I use when writing C++ programs, mostly for Android but it's all written to enable easy portability between Android, Linux, Windows and MacOSX. The code is part ugly, part inconsistent but quite useful.
Features
- JSON read/write (two libraries that should be made more similar)
- basic OpenGL utility code, like compressed texture loading
- 2D texture atlases and drawing code
- ETC1 texture loading support
- basic logging
- Really simple audio mixer with OGG sample support
- RIFF file read/write
- MIDI Input (only on Windows)
Notes
- The associated tools to create ZIM texture files and atlases do not yet live here but I might move them here eventually.
- This library is not really meant to be a public library but I see no reason not to set it free.
- Note that the included VS project is probably not very useful for you and you're likely better off making your own.
- Don't complain about inconsistent naming etc - this consists of code that has been cobbled together from a variety of my projects through the years. Fashions come and go.
Licenses
This library, for my convenience, incorporates code from a variety of public domain or similarly-licensed code. This is the list:
- glew (GL extension wrangler), MIT license. TODO: should just use a submodule.
- etcpack by Ericsson, in a cleaned up form. Has strange license but not very limiting - you can only use the code for making textures for hardware supporting ETC1, or something like that. Don't think it affects the rest of the code in any way.
- sha1, public domain implementation by Dominik Reichl
- vjson in a heavily modified form, originally by Ivan Vashchaev (TODO: break out into its own repo?)
- libzip with attribution "Copyright (C) 1999-2007 Dieter Baron and Thomas Klausner"
- stb_vorbis, public domain by Sean Barrett of RAD Tools
If you're not okay with the licenses above, don't use this code.
I hereby release all code here not under the licenses above under the MIT license.
Contact
If you find this useful for your own projects, drop me a line at hrydgard@gmail.com .
Henrik Rydg<64>rd