Henrik Rydgard
e26083f702
Merge branch 'master' into multi-draw
...
Conflicts:
GPU/GLES/IndexGenerator.cpp
GPU/GLES/IndexGenerator.h
2012-12-21 22:58:39 +01:00
Henrik Rydgard
ea07c14c4c
Add IndexGenerator.cpp/h which will later be used to combine small draw calls into large indexed draw calls, for better performance.
2012-12-21 22:53:24 +01:00
Henrik Rydgard
6b3ac02dae
Now not flushing at every drawcall by mistake...
2012-12-21 22:52:09 +01:00
Henrik Rydgard
d663e28bde
More work and optimization. Still not quite there.
2012-12-21 21:49:09 +01:00
Henrik Rydgard
3b114eb24a
More work on indexed draws. Not combining yet.
2012-12-21 19:16:17 +01:00
Henrik Rydgard
2e9daa5f89
All drawing is now indexed lists, through IndexGenerator.
2012-12-21 18:46:15 +01:00
Henrik Rydgard
4eeab83389
Add IndexGenerator.cpp/h which will later be used to combine small draw calls into large indexed draw calls, for better performance.
2012-12-21 17:50:22 +01:00
Henrik Rydgard
4c23d668e1
Cleanup and reorganize gpu code a little
2012-12-21 16:50:14 +01:00
Henrik Rydgård
d42245482b
Merge pull request #213 from raven02/ge_cmd
...
Change BBOX JUMP/TEST to DEBUG . This fix massive slowdown when hit them .
2012-12-21 04:00:29 -08:00
Henrik Rydgard
4efb66fdb6
Fix hw transform and audio on android, misc
2012-12-21 12:57:43 +01:00
raven02
ab2f0b89e6
Change to DEBUG for BBOX JUMP/TEST .Fix massive slowdown when hit them .
2012-12-21 19:57:38 +08:00
Henrik Rydgard
9db065a979
add #version to the framebuffer drawing shader for compat
2012-12-21 11:24:38 +01:00
Henrik Rydgard
4bf2e52623
HW transform: Avoid 4x3 matrices for GLES 2.0 compat. Add option to turn hw transform on.
2012-12-21 11:08:54 +01:00
Henrik Rydgard
4d4370232c
Assorted minor cleanup and fixes.
2012-12-21 10:20:22 +01:00
Henrik Rydgard
52cf324e9e
Try to fix "W1" vertex error
2012-12-21 10:19:37 +01:00
Unknown W. Brackets
9034cfbfd3
Defer HLE interrupts, vblank only when enabled.
...
Based on tests, vblank doesn't queue up (makes sense) while
interrupts are disabled.
I'm not 100% sure about the GPU stuff but it seems to only come
from HLE via sceGe, so this should fix those return values.
2012-12-20 21:54:40 -08:00
Henrik Rydgard
19391541fb
HW transform: Fix too-harsh lighting
2012-12-20 23:47:19 +01:00
Henrik Rydgard
79bd4e3d41
Lighting fixes (sw + hw)
2012-12-20 23:28:58 +01:00
Henrik Rydgard
1551aea902
HW transform bugfixes
2012-12-20 22:45:26 +01:00
Henrik Rydgard
c3b778daab
More work on hw transform.
2012-12-20 18:31:21 +01:00
Henrik Rydgard
7d949bbee0
VertexDecoder: Respect lowerbound of verts to transform. Make decoding a little safer.
2012-12-20 16:03:40 +01:00
Henrik Rydgard
6a7e77ce1d
Prevent crashes on bad vertex / index addresses
2012-12-20 15:07:58 +01:00
Henrik Rydgard
4f376a2c34
Hardware vertex transform, preliminary and optional. No lighting yet. Disabled until it works right...
2012-12-20 15:07:58 +01:00
Henrik Rydgard
1b5407f505
Rewrite the vertex decoder a bit. Turn on SSE2 compiler flag etc.
2012-12-20 15:07:57 +01:00
Henrik Rydgard
c4ca9b5956
Get rid of the DecodedVertex struct.
2012-12-20 15:07:57 +01:00
Henrik Rydgard
13460b7aa6
Use flexible vertex formats pre-transform. Saves memory b/w.
2012-12-19 20:21:59 +01:00
Henrik Rydgard
b8d596cbec
Add some infrastructure for flexible vertex formats
2012-12-19 18:35:37 +01:00
Henrik Rydgard
4046146164
Add experimental wireframe mode for debugging. Fix texenv color. Code cleanup.
2012-12-19 15:14:41 +01:00
Henrik Rydgard
ba476264db
Fix GL_ZERO transparencies
2012-12-18 00:02:04 +01:00
Henrik Rydgard
3bd5cfed73
Work around for strange idling issue, various fixes
2012-12-17 23:33:24 +01:00
Henrik Rydgard
c3819ec721
Fix a possible crash in audio code
2012-12-17 21:59:43 +01:00
Henrik Rydgard
11279668ca
Allow changing of zoom factor at runtime
2012-12-17 21:06:47 +01:00
Henrik Rydgard
34d28a9c5c
Merge branch 'screen-fix' of https://github.com/raven02/ppsspp into raven02-screen-fix
2012-12-17 21:01:27 +01:00
Henrik Rydgard
8db1cef503
Fix GPU block transfer
2012-12-17 19:04:19 +01:00
Xele02
71839414ca
Fix Android build cast error
...
Remove gl command for texture 2d
2012-12-16 13:07:11 +01:00
raven02
fb5a26b46d
Enable correct viewport switching for screen 1x-4x and add Ctrl1-4 as shortcut key
2012-12-16 17:57:33 +08:00
Xele02
1ea6fe7e4d
Correct texture display in save dialog on Android.
2012-12-14 01:04:45 +01:00
Henrik Rydgård
a0d8017c22
Fix for previous commit
2012-12-05 11:13:36 +07:00
Henrik Rydgård
36943db4ec
Merge branch 'master' of github.com:hrydgard/ppsspp
...
Conflicts:
Core/Config.h
2012-12-05 10:57:30 +07:00
Henrik Rydgård
700921deb3
Fix rendering on MacOSX (shader compiler very fussy...). Minor prep for hw transform.
2012-12-05 10:55:06 +07:00
Sacha
5316f856d1
Blackberry 10 Port
...
* Replace SDL with asound backend (removes the only dependency)
* Remove all references to SDL in bar-descriptor.xml, blackberry_build.sh
* Greatly simplify blackberry_build.sh
* Modify CMakeLists.txt to account for removal of SDL
* Remove redundancy in CMakeLists.txt (EGLv2)
* Refactor nativeExtra's and setting targets
* Remove android/CMakeLists.txt (unrelated file)
* Update for latest Blackberry NDK (1088)
* Handle bug with VSync in latest NDK
* Update bar-descriptor.xml to version 0.4
* Fix define on iOS in FragmentShaderGenerator.cpp
* Specify NDK used in Credits by target platform, add contributor, remove redundancy
2012-12-02 14:48:00 +10:00
Henrik Rydgård
67f9f3f73f
SDL port: Add DEBUG option to set _DEBUG, add ability to log gfx stuff
2012-12-01 23:38:18 +01:00
Henrik Rydgard
6e32b30afd
DisplayDrawer->FramebufferManager
2012-12-01 10:17:34 +01:00
Henrik Rydgard
d4cc0bada7
Revert broken optimization in TextureCache (there are still memory savings to be had though)
2012-12-01 10:17:33 +01:00
Henrik Rydgard
aa04eaec31
TextureCache: Cleanup, memory savings
2012-11-30 22:32:50 +01:00
Henrik Rydgard
37f28ab4eb
Buildfix (?)
2012-11-28 17:09:19 +01:00
Henrik Rydgard
7a7548a70f
Warning fixes etc
2012-11-28 16:20:38 +01:00
Henrik Rydgard
5fb8e6dfb0
DXT textures now mostly working-ish (work left to do on alpha for DXT3/5)
2012-11-28 16:12:29 +01:00
Henrik Rydgard
6ff2964170
Fix mistake in gpu signals, add more logging
2012-11-28 14:01:28 +01:00
Henrik Rydgard
980d13fe50
Assorted GPU fixes: Advance vertex pointer, fixes missing triangles in SPT. More logging. Separate proj matrices for through and normal mode (through matrix don't need to get updated as often). Some cleanup.
2012-11-28 13:45:22 +01:00
Henrik Rydgard
a74af8f372
Some new NIDs, log fix, very minor bugfix.
2012-11-27 11:40:30 +01:00
Henrik Rydgard
2822ce2737
Temporarily disable most of the viewport code as it broke some games. Kept the flip detection.
2012-11-26 20:38:26 +01:00
Henrik Rydgard
d8c92caad9
Safer matrix loading. Change default G3D log level from Notice to Error.
2012-11-26 18:04:34 +01:00
Henrik Rydgard
870ea6628b
Reasonably correct viewport handling. Optional debug stats overlay (not always 100% working).
2012-11-26 17:35:08 +01:00
Sacha
b76152d88a
Use gl_common from native.
2012-11-26 20:38:39 +10:00
Henrik Rydgard
ec55fac3cd
Float TC coordinates apparently work in through mode. Add one more special case for blending.
2012-11-26 11:34:23 +01:00
Sacha
5019462317
iOS Support
...
Preliminary iOS support using new framework.
2012-11-26 14:06:35 +10:00
Sacha
3c903dda24
Improve portability to future platforms. Make use of new USING_GLES2 define throughout PPSSPP. Also use ARM definition where suitable. Remove some redundancy with includes.
2012-11-26 13:25:14 +10:00
Henrik Rydgard
1a7ca88df4
Fix some black textures
2012-11-26 01:21:14 +01:00
Florent Castelli
fd76b2bb15
Fix ordering in gpu state struct
2012-11-25 18:15:30 +01:00
Henrik Rydgard
c0075d8322
Special case for GL_ZERO blend factor too. Don't log on "sync".
2012-11-25 17:48:05 +01:00
Florent Castelli
2f39496ec5
Use ambient material color when no color in the vertex
...
Fixes color in celshading demo
2012-11-25 17:45:50 +01:00
Henrik Rydgard
4b67f22072
Fixes to usage of gl state stuff
2012-11-25 17:21:23 +01:00
Henrik Rydgard
d0f829353d
Support FIXA and FIXB blend factors as well as possible.
2012-11-25 15:49:37 +01:00
Henrik Rydgård
fc453c979f
MacOSX buildfix. Doesn't run right yet though.
2012-11-25 12:25:07 +01:00
Florent Castelli
4143801891
Handle depth range (zmin, zmax) in a hackish way
2012-11-25 00:15:21 +01:00
Unknown W. Brackets
8971ff7e99
Don't log texture cache evictions.
2012-11-24 11:00:29 -08:00
Unknown W. Brackets
11868f26a9
Cache textures based on more parameters.
...
This makes Tales of Eternia run much faster.
2012-11-24 10:58:10 -08:00
Unknown W. Brackets
8e09869ac2
Invalidate the texcache without restarting loop.
2012-11-24 10:43:16 -08:00
Florent Castelli
56175bc505
Defer blend, cull and depth test changes to draw command
...
Avoid unnecessary state changes and reduces the amount of OpenGL calls.
It also puts all the interesting logic at the same place, reducing the
complexity a little.
2012-11-24 15:19:29 +01:00
Henrik Rydgard
b964516669
Fix clear mode, turn Alpha Test back on
2012-11-23 12:43:31 +01:00
Henrik Rydgard
e92e919926
Fix problems with additive blending, fix color doubling.
...
Greatly improves MotoGP among others.
2012-11-23 01:26:12 +01:00
Henrik Rydgard
d141d205f8
Delete old textures, to prevent memory usage from growing indefinitely.
2012-11-22 23:07:15 +01:00
Henrik Rydgard
02a94e52ee
Do GPU ram<->vram block transfers. Could be smart enough to clear textures from cache but isn't yet.
2012-11-22 20:57:41 +01:00
Henrik Rydgard
8f33837de9
Bug fixing mtv/mfv, add comment
2012-11-22 20:14:24 +01:00
Henrik Rydgård
2a56d36b12
glViewport calls need to be in pixel coordinates.
2012-11-20 16:48:24 +01:00
Henrik Rydgard
4b87da74cb
windows gui option for buffered rendering. Misc fixes, prettier checkbox on android.
2012-11-20 11:35:48 +01:00
Henrik Rydgard
f378f959e1
Fix issues with games that don't call sceDisplaySet mode. Add option to run without FBOs, may be useful on slow devices.
2012-11-20 10:59:23 +01:00
Henrik Rydgard
8a6d151df5
ALPHA_TEST doesn't exist on OpenGL ES 2.0
2012-11-20 00:35:14 +01:00
Henrik Rydgard
ee32db47b9
Assorted FBO fixes
2012-11-20 00:31:19 +01:00
Henrik Rydgard
4a49b8ee36
Workaround for motogp setting a bogus framebuffer address.
2012-11-19 23:53:38 +01:00
Henrik Rydgard
8b67975a47
GL: Framebuffer management using FBOs. Fixes flicker in Lumines and many others.
2012-11-19 23:29:14 +01:00
Henrik Rydgard
91e1cce17e
Some reorg in preparation for FBO work
2012-11-19 21:23:29 +01:00
Henrik Rydgard
d572d40c36
More warning fixing
2012-11-18 23:35:02 +01:00
Henrik Rydgard
fa05713456
misc cleanup
2012-11-18 23:14:50 +01:00
Henrik Rydgard
9ec858a64d
Bugfix an 8-bit indexed texture format
2012-11-18 18:47:29 +01:00
Henrik Rydgard
75412b064b
Implement sceUtilityMsgDialog
2012-11-18 17:51:14 +01:00
Henrik Rydgard
5596b98529
Get rid of opengl include from sceDisplay.cpp
2012-11-18 13:14:22 +01:00
Henrik Rydgard
e37a1fb1d3
Add internal 2D drawing library that goes through the Ge emulation for portability.
...
To be used for things like sceUtility* and other overlays like FPS and stats.
2012-11-18 13:04:49 +01:00
Henrik Rydgard
a6eb25b58c
Disable blend on clear mode
2012-11-18 02:48:15 +01:00
Henrik Rydgard
423bba5d8d
Some optimization and minor fixes
2012-11-17 15:06:10 +01:00
Henrik Rydgard
ba171c8360
Fix scaling for 16-bit UVs
2012-11-16 17:19:28 +01:00
Henrik Rydgard
4c1ae9e81c
Do indexed draws properly with glDrawElements where possible. Fix sprite culling issue (winding order).
2012-11-16 16:43:16 +01:00
Henrik Rydgard
7c9107030d
Speed up T&L by only transforming/lighting each vertex once, for indexed draws
2012-11-16 16:19:37 +01:00
Henrik Rydgard
e627e1aeb2
Culling and decode fixes.
...
Road is visible in MotoGP
2012-11-16 15:35:41 +01:00
Henrik Rydgard
e5c6cf965b
Fixes and optimizations to vertex decoding and lighting.
...
Motorcycles are now visible in MotoGP.
2012-11-16 15:16:14 +01:00
Florent Castelli
cace547f8a
Fix colors for textures with 5551 clut
...
Fixes NAMCO logo in the Tales of Eternia intro, which is now red.
2012-11-15 01:51:40 +01:00
Henrik Rydgard
2603c44e46
Actually, double-oops.
2012-11-11 19:07:07 +01:00
Henrik Rydgard
6a350a4704
Umm, oops.
2012-11-11 19:03:48 +01:00
Henrik Rydgard
07e753da9f
Fix skinning bugs, optimize, re-enable a lighting optimization
2012-11-11 19:00:44 +01:00
Henrik Rydgård
5f02c9ad36
Merge pull request #35 from Orphis/skinfix
...
Apply the world transform to the skinned vertices
2012-11-11 09:12:03 -08:00
Florent Castelli
d06b1ae347
Apply the world transform to the skinned vertices
...
Improves rendering of skinning demo.
The end of the tube is wrong and collapses on the origin.
2012-11-11 17:55:16 +01:00
Florent Castelli
e77cb6b319
Fix color components ordering of the lights
2012-11-11 17:27:39 +01:00
Henrik Rydgard
343b9435b9
A few minor fixes + buildfix
2012-11-10 23:44:14 +01:00
Henrik Rydgård
75dcc8e8ce
Merge pull request #28 from Orphis/clutfix
...
Texture format and CLUT awareness for the cache
2012-11-10 02:47:47 -08:00
Florent Castelli
ca56b562af
Texture format and CLUT awareness for the cache
...
Fixes the intro screen in Tales of Eternia, but for some reason,
the Namco logo is purple instead of red.
2012-11-10 11:44:30 +01:00
Henrik Rydgard
387552f564
Misc fixes (accept .prx, work on power callbacks, bugs)
2012-11-10 10:15:11 +01:00
Henrik Rydgard
08ea2cacf2
Copy base ptr fixes to nullgpu
2012-11-09 17:54:08 +01:00
Henrik Rydgard
b43dfebb10
Fixes to lighting, display list base pointer, misc
2012-11-09 17:51:45 +01:00
Henrik Rydgard
54f9509693
The texture conversion now works for OpenGL ES again.
2012-11-09 01:24:19 +01:00
Henrik Rydgard
6fd4168232
Port new texture code to GLES : simulate GL_PACK_ROW_LENGTH
2012-11-09 00:51:04 +01:00
Arthur Blot
a29072c3f7
Fixed texture loading for all formats.
2012-11-08 23:26:30 +01:00
Henrik Rydgard
f44a207638
Halt GPU on invalid addresses, more accurate GetTicks in CoreTiming
2012-11-07 15:40:46 +01:00
Henrik Rydgard
320eaeb6a4
Include fix
2012-11-06 22:04:58 +01:00
Henrik Rydgard
8a082f91cc
Ge Callbacks seem to be working now.
2012-11-06 18:14:09 +01:00
Henrik Rydgard
85d5cfd8c4
Add more proper "Null" GPU
2012-11-06 17:05:27 +01:00
Sacha
41f5abab31
PPSSPP ported to Blackberry10
...
Now builds on Playbook and Dev Alpha
Make emulator more compatible with other OS (case sensitivity, defines, includes)
Uses Android's code paths and backend
2012-11-05 23:09:49 +10:00
Henrik Rydgard
b214a1a1da
Revert "Better wrapper system, and fixed warnings"
...
This reverts commit a00b1855cb
.
Conflicts:
Core/HLE/FunctionWrappers.h
Core/HLE/sceCtrl.cpp
Core/HLE/sceKernelModule.cpp
2012-11-05 10:05:09 +01:00
Henrik Rydgard
6bed1afb72
Merge branch 'master' of https://github.com/artart78/ppsspp into artart78-master
2012-11-04 23:59:26 +01:00
Henrik Rydgard
687b085357
Missed these somehow
2012-11-04 23:58:25 +01:00
Henrik Rydgard
64cc573703
Switch to "GPL 2.0 or later" for various reasons. I wrote most of the code I imported from Dolphin (which is GPL2-but-not-later), so it should be OK.
2012-11-04 23:24:00 +01:00
Henrik Rydgard
0c66247c0d
Merge branch 'master' of github.com:hrydgard/ppsspp
2012-11-04 19:57:37 +01:00
Arthur Blot
a00b1855cb
Better wrapper system, and fixed warnings
2012-11-04 15:08:23 +01:00
MrOrdinaire
1ab9943643
fix missing #include's and missing CMake linking directives
2012-11-03 10:33:24 +08:00
Henrik Rydgard
280c1cdea3
Display list logging improvements
2012-11-02 12:33:16 +01:00
Henrik Rydgard
4f7ad15758
Add snapshot of the whole source code.
2012-11-01 16:19:01 +01:00