Sergey Lipskiy
|
fbf660d4ec
|
Refactor: Make DepthBufferList singleton.
|
2015-05-13 10:12:48 +06:00 |
|
Sergey Lipskiy
|
d7f4e44674
|
Frame buffer refactor.
Use std::list as container for frame buffers.
|
2015-05-13 10:12:46 +06:00 |
|
Sergey Lipskiy
|
bd8b73d5b5
|
Refactor: Make frame buffer singleton
|
2015-05-13 10:12:45 +06:00 |
|
Sergey Lipskiy
|
7f6d7e2772
|
Refactor: rewrite TextureCache.
Store normal textures and frame buffer textures in separate maps.
Replace TextureCache_* functions by methods of TextureCache.
|
2015-05-13 10:12:44 +06:00 |
|
Sergey Lipskiy
|
23f7f24d35
|
Refactor: replace CombinerInfo::get().getCurrent() by inline function currentCombiner()
|
2015-05-13 10:12:39 +06:00 |
|
Sergey Lipskiy
|
0f176dcc4c
|
Refactor: rename ShaderCombiner methods - name starts from lower case letter.
|
2015-05-13 10:12:37 +06:00 |
|
Sergey Lipskiy
|
7b3423d7de
|
Code cleanup: fix idents for FrameBuffer.cpp
|
2015-05-13 10:12:35 +06:00 |
|
Sergey Lipskiy
|
2e5ad21ddd
|
Refactor: remove combiner update methods from CombinerInfo and call them
directly for ShaderCombiner object.
|
2015-05-13 10:12:34 +06:00 |
|
Sergey Lipskiy
|
709f631cbf
|
Refactor: Make Combiner_* functions as members of CombinerInfo.
|
2015-05-13 10:12:32 +06:00 |
|
Sergey Lipskiy
|
92eb61572e
|
Fix scissor related problems:
- scissor dissable/enable in FrameBuffer_RenderBuffer()
- scissor height in OGL_UpdateStates()
|
2015-05-13 10:12:20 +06:00 |
|
Sergey Lipskiy
|
a3f9fe2186
|
Disable scissor in FrameBuffer_RenderBuffer().
|
2015-05-13 10:12:09 +06:00 |
|
Sergey Lipskiy
|
e784ea7205
|
GLES2 fixes in frame/depth buffer initialization.
|
2015-05-13 10:12:05 +06:00 |
|
Sergey Lipskiy
|
898a189f89
|
Fixed Combiner_UpdateCombineFBInfo() call.
|
2015-05-13 10:12:03 +06:00 |
|
Sergey Lipskiy
|
7166d0aacf
|
Fix hardware lighting.
|
2015-05-13 10:11:41 +06:00 |
|
Sergey Lipskiy
|
3d9e48230a
|
Fix FrameBuffer_RenderBuffer for GLES2.
|
2015-05-13 10:11:39 +06:00 |
|
Sergey Lipskiy
|
caf4353295
|
Guard GLES2 incompatible code in FrameBuffer.cpp and gSP.cpp
|
2015-05-13 10:11:39 +06:00 |
|
Sergey Lipskiy
|
889b889847
|
Replace GL_DRAW_FRAMEBUFFER by GL_FRAMEBUFFER in GLES2 compatible code.
|
2015-05-13 10:11:38 +06:00 |
|
Sergey Lipskiy
|
90f8e4c2f3
|
Remove glDisable( GL_FOG ).
|
2015-05-13 10:11:37 +06:00 |
|
Sergey Lipskiy
|
6219ee02bf
|
Rewrite RDRAMtoFrameBuffer::CopyFromRDRAM
Use OGL_DrawTexturedRect to render the texture.
|
2015-05-13 10:11:37 +06:00 |
|
Sergey Lipskiy
|
2b0d6e8f1d
|
Make FrameBuffer_AttachDepthBuffer() GLES2 compatible.
|
2015-05-13 10:11:35 +06:00 |
|
Sergey Lipskiy
|
f00ca5f0a1
|
Replace glFramebufferTexture by GLES2 compatible glFramebufferTexture2D.
|
2015-05-13 10:11:35 +06:00 |
|
Sergey Lipskiy
|
ee57f6ef47
|
Move frame buffer emulation options to Config.
|
2015-05-13 10:11:30 +06:00 |
|
Sergey Lipskiy
|
8018ba0aea
|
Move user-defined settings to Config structure.
|
2015-05-13 10:11:27 +06:00 |
|
Sergey Lipskiy
|
2708b2abeb
|
Remove FrameBufferExt functions usage.
|
2015-05-13 10:11:21 +06:00 |
|
Sergey Lipskiy
|
6bac605fe2
|
Make frame buffer GLES2 compatible.
|
2015-05-13 10:11:20 +06:00 |
|
Sergey Lipskiy
|
b2a260a055
|
Set READ_FRAMEBUFFER back to zero after CopyToRDRAM.
Fixed OGL_ReadScreen with CopyToRDRAM enabled.
|
2015-05-13 10:11:13 +06:00 |
|
Sergey Lipskiy
|
cc3446c4d6
|
BindImageTexture fixes
|
2015-05-13 10:11:09 +06:00 |
|
Sergey Lipskiy
|
344df93374
|
Rewrite depth texture clear.
|
2015-05-13 10:11:07 +06:00 |
|
Sergey Lipskiy
|
314b9098f4
|
Implement N64 depth compare.
Removed integer-based variant of depth texture.
|
2015-05-13 10:11:06 +06:00 |
|
Sergey Lipskiy
|
7f49dd39c2
|
Replace frameBuffer.drawBuffer from GL_DRAW_FRAMEBUFFER
to gles compatible GL_FRAMEBUFFER
|
2015-05-13 10:11:03 +06:00 |
|
Sergey Lipskiy
|
73890d4354
|
(R): Remove unused includes from FrameBuffer.cpp
|
2015-05-13 10:10:54 +06:00 |
|
Sergey Lipskiy
|
3b06773f43
|
(R): Rewrite OGL_SwapBuffers() and use it for all platforms.
|
2015-05-13 10:10:53 +06:00 |
|
Sergey Lipskiy
|
32892a2236
|
Fix #include dependences.
|
2015-05-13 10:10:47 +06:00 |
|
Sergey Lipskiy
|
0a1499caed
|
Fix compilation errors when MUPENPLUSAPI enabled
|
2015-05-13 10:10:43 +06:00 |
|
Sergey Lipskiy
|
fd3fe0b7b7
|
Fix DepthBufferToRDRAM::CopyToRDRAM :
return if depth buffer is null
|
2015-05-13 10:10:41 +06:00 |
|
Sergey Lipskiy
|
4635e24d62
|
Add g_bIgnoreCFB option.
It is necessary for Zelda Pause Screen, otherwise it will be
replaced by blank data from RDRAM.
|
2015-05-13 10:10:40 +06:00 |
|
Sergey Lipskiy
|
da3d18d7d8
|
Fix frame buffer textures delete.
|
2015-05-13 10:10:38 +06:00 |
|
Sergey Lipskiy
|
d4953abb91
|
Fix depth beffer rendering.
Corrected bug with Z calculation in depth_compare_shader.
|
2015-05-13 10:10:37 +06:00 |
|
Sergey Lipskiy
|
9b8b667fab
|
Implement CopyDepthBuffer to RDRAM.
|
2015-05-13 10:10:36 +06:00 |
|
Sergey Lipskiy
|
00c12e2d1d
|
Add FBO for depth buffer.
|
2015-05-13 10:10:36 +06:00 |
|
Sergey Lipskiy
|
8e3e41356a
|
FrameBuffer: Replace pointer to depth texture by pointer to DepthBuffer
|
2015-05-13 10:10:35 +06:00 |
|
Sergey Lipskiy
|
e9b5283339
|
Correct calls for Combiner_UpdateCombineDepthInfo()
+ cosmetic formatting.
|
2015-05-13 10:10:34 +06:00 |
|
Sergey Lipskiy
|
dfb8b0f04b
|
Remove legacy combiners.
|
2015-05-13 10:10:32 +06:00 |
|
Sergey Lipskiy
|
14f5a92da3
|
Switch from glActiveTextureARB to glActiveTexture
|
2015-05-13 10:10:31 +06:00 |
|
Sergey Lipskiy
|
f151ef36ca
|
Add shadow map shader
|
2015-05-13 10:10:28 +06:00 |
|
Sergey Lipskiy
|
898a81ecde
|
Add possibility to switch between float and int depth texture formats
|
2015-05-13 10:10:26 +06:00 |
|
Sergey Lipskiy
|
9c508f1a9b
|
Change to float format of depth texture
|
2015-05-13 10:10:25 +06:00 |
|
Sergey Lipskiy
|
c47ab51175
|
Add depth compare shader to the main program.
|
2015-05-13 10:10:25 +06:00 |
|
Sergey Lipskiy
|
01073f40b0
|
Add depth texture to depth buffer.
|
2015-05-13 10:10:20 +06:00 |
|
Sergey Lipskiy
|
55a14d42f0
|
Fix RDRAMtoFrameBuffer::CopyFromRDRAM - make it working with buffer of any size.
Mario Tennis scoreboard hack is now uses CopyFromRDRAM, so
FrameBufferToRDRAM::CopyAuxBufferToRDRAM became unused and thus removed.
|
2015-05-13 10:10:17 +06:00 |
|
Sergey Lipskiy
|
02c1884382
|
Fix pointer compare in FrameBufferToRDRAM::CopyAuxBufferToRDRAM
|
2015-05-13 10:10:14 +06:00 |
|
Sergey Lipskiy
|
26ab545b8a
|
Fix FrameBuffer_RenderBuffer to work on Linux.
|
2015-05-13 10:10:13 +06:00 |
|
Sergey Lipskiy
|
5cedc0e6e7
|
Implement VI emulation: treat main frame buffer as TV screen and render
FBO buffers on it according to VI registers values.
|
2015-05-13 10:10:11 +06:00 |
|
Sergey Lipskiy
|
62e3f2404e
|
Copy whole frame buffer to RDRAM, without offset.
|
2015-05-13 10:10:09 +06:00 |
|
Sergey Lipskiy
|
fb0ba864d1
|
Force CFB mode if current frame is shown more than 4 times in succession (<15 fps)
|
2015-05-13 10:10:08 +06:00 |
|
Sergey Lipskiy
|
a7b5127743
|
FrameBufferToRDRAM cosmetic changes
|
2015-05-13 10:10:06 +06:00 |
|
Sergey Lipskiy
|
5f57aa5c48
|
Implement copy RDRAM to frame buffer.
|
2015-05-13 10:10:05 +06:00 |
|
Sergey Lipskiy
|
35ab89d379
|
Fix bug in FrameBuffer_SaveBuffer:
don't use removed buffer
|
2015-05-13 10:10:05 +06:00 |
|
Sergey Lipskiy
|
31d236f59b
|
Rewrite FrameBuffer_CopyToRDRAM.
Use Pixel Buffer Object for async read from video memory.
|
2015-05-13 10:10:04 +06:00 |
|
Sergey Lipskiy
|
ca99c49bc7
|
Remove duplicated code from FrameBuffer functions.
|
2015-05-13 10:10:03 +06:00 |
|
Sergey Lipskiy
|
72e7d41673
|
Remove unused function FrameBuffer_RestoreBuffer()
|
2015-05-13 10:10:02 +06:00 |
|
Sergey Lipskiy
|
bd51edec41
|
Temporal hackish solution for scoreboard problem in Mario Tennis:
copy aux frame buffer content to RDRAM and delete the buffer.
Need to implement proper solution.
|
2015-05-13 10:10:01 +06:00 |
|
Sergey Lipskiy
|
efee40c2c7
|
Implement copy texture frame buffer to RDRAM.
|
2015-05-13 10:09:59 +06:00 |
|
Sergey Lipskiy
|
971bd9d0ec
|
Frame buffer fixes for Mario Tennis.
Implemented various methods for testing buffer validity.
|
2015-05-13 10:09:58 +06:00 |
|
Sergey Lipskiy
|
1e4870e6b9
|
Change way of color buffer address range calculation:
on buffers swap use actual color image height to re-calculate end address.
|
2015-05-13 10:09:53 +06:00 |
|
Sergey Lipskiy
|
1341f7bf15
|
Frame buffer emulation fixes:
save pointer to the load tile in the frame buffer.
Game: Mario Tennis
|
2015-05-13 10:09:52 +06:00 |
|
Sergey Lipskiy
|
7418f76968
|
Frame buffer emulation fixes:
clear color buffer when size is changed but address is the same.
|
2015-05-13 10:09:52 +06:00 |
|
Sergey Lipskiy
|
562612a21a
|
Texture load status is now set per tile.
|
2015-05-13 10:09:47 +06:00 |
|
Sergey Lipskiy
|
5092cf5891
|
Code cleanup: Remove duplicated code in FrameBuffer_ActivateBufferTexture().
|
2015-05-13 10:09:43 +06:00 |
|
Sergey Lipskiy
|
ad9e3d3bee
|
Correct texture buffer shift in loadblock mode.
|
2015-05-13 10:09:42 +06:00 |
|
Sergey Lipskiy
|
aec5094967
|
Add support for 8bit frame buffers.
Fixed dynamic shadow in Banjo-Tooie
|
2015-05-13 10:09:41 +06:00 |
|
Sergey Lipskiy
|
3f98553ad2
|
Correct background images usage in frame buffer emulation.
|
2015-05-13 10:09:39 +06:00 |
|
Sergey Lipskiy
|
58728b954c
|
Optimize FrameBuffer_SaveBuffer code.
|
2015-05-13 10:09:37 +06:00 |
|
Sergey Lipskiy
|
880238250b
|
Fix depth buffer initialization and clean.
|
2015-05-13 10:09:36 +06:00 |
|
Sergey Lipskiy
|
797dfad57e
|
Frame buffer related fixes. Zelda OOT pause screen works!
|
2015-05-13 10:09:34 +06:00 |
|
Sergey Lipskiy
|
3d2083d6a4
|
New implementation of FrameBuffer_RenderBuffer,
via glBlitFramebuffer.
|
2015-05-13 10:09:34 +06:00 |
|
Sergey Lipskiy
|
a07555546e
|
Frame buffer fixes
|
2015-05-13 10:09:33 +06:00 |
|
Sergey Lipskiy
|
97f07e38c3
|
Fix some type mismatch errors.
|
2015-05-13 10:09:25 +06:00 |
|
Sergey Lipskiy
|
69f27a5d8a
|
Initial project version. Based on glN64-0.4.1-rc2
|
2015-05-13 10:09:12 +06:00 |
|