Commit message (Collapse) | Author | Age | |
---|---|---|---|
* | Rasterizer: Pre-divide vertex attributes by W | 2014-12-29 | |
| | | | | | Execute the division-by-W for perspective-correct interpolation of values in the clipper, moving them out of the rasterization inner loop. | ||
* | GPU: Bitwise texture swizzling | 2014-12-29 | |
| | | | | | | Replace the loop-based texture address swizzling code by a bit-twiddling implementation, providing a very small speed up. Also simplify addressing code. | ||
* | Rasterizer: Common sub-expression elimination | 2014-12-29 | |
| | | | | | Move the computation of some values out of loops so that they're not constantly recalculated even when they don't change. | ||
* | Clipper: Compact buffers on each clipping pass | 2014-12-29 | |
| | | | | | | Use a new buffer management scheme in the clipper that allows using a bounded minimal amount of buffer space. Even though it copies more data it is still slightly faster likely due to using less cache. | ||
* | Clipper: Avoid dynamic allocations | 2014-12-29 | |
| | | | | | | The triangle clipper was allocating its temporary input, output and work buffers using a std::vector. Since this is a hot path, it's desirable to use stack allocation instead. | ||
* | Vertex Shader: Zero OutputVertex to avoid denormals | 2014-12-29 | |
| | | | | | | | | | Unused OutputVertex attributes were being left un-initialized. The leftover garbage sometimes decoded as floating-point denormalized values, causing fallbacks to microcode and massive slowdowns in the rest of the rasterization pipeline even though the results were unused. By zeroing the structure we ensure these attributes only contain harmless zeros. | ||
* | GPU: Implement frameskip and remove forced framebuffer swap hack. | 2014-12-28 | |
| | |||
* | Merge pull request #327 from Apology11/master | 2014-12-26 | |
|\ | | | | | Fix visual studio ambiguous symbol error | ||
* \ | Merge pull request #322 from chinhodado/master | 2014-12-22 | |
|\ \ | | | | | | | More warning cleanups | ||
* \ \ | Merge pull request #291 from purpasmart96/license | 2014-12-21 | |
|\ \ \ | | | | | | | | | License change | ||
| | | * | Fix visual studio ambiguous symbol error | 2014-12-21 | |
| |_|/ |/| | | |||
| | * | More warning cleanups | 2014-12-21 | |
| |/ |/| | |||
| * | License change | 2014-12-20 | |
| | | |||
* | | Pica/VertexShader: Promote a log message to critical status. | 2014-12-20 | |
| | | |||
* | | Pica/VertexShader: Small optimization. | 2014-12-20 | |
| | | |||
* | | Pica/VertexShader: Be robust against invalid inputs. | 2014-12-20 | |
| | | | | | | | | More specifically, this also fixes crashes by Citra trying to load a src2 register even if the current instruction does not use that. | ||
* | | Pica/VertexShader: Clarify a comment. | 2014-12-20 | |
| | | |||
* | | Pica/DebugUtils: Further cleanups to LookupTexture. | 2014-12-20 | |
| | | |||
* | | Pica/DebugUtils: Fix two warnings. | 2014-12-20 | |
| | | |||
* | | Pica/DebugUtils: Better document LookupTexture. | 2014-12-20 | |
| | | |||
* | | Pica/Rasterizer: Get rid of C-style casts. | 2014-12-20 | |
| | | |||
* | | Pica/DebugUtils: Make a number of variables static. | 2014-12-20 | |
| | | | | | | | | Makes for cleaner and faster code. | ||
* | | Pica/VertexShader: Cleanup flow control logic and implement CMP/IFU ↵ | 2014-12-20 | |
| | | | | | | | | instructions. | ||
* | | Pica/VertexShader: Run instruction handlers according to the effective opcode. | 2014-12-20 | |
| | | | | | | | | This allows for proper emulation of the different CMP/LRP/MAD instructions. | ||
* | | Pica/VertexShader: Implement MAX instructions. | 2014-12-20 | |
| | | |||
* | | Pica: Add support for boolean uniforms. | 2014-12-20 | |
| | | |||
* | | Pica/VertexShader: Add support for MOVA, CMP and IFC. | 2014-12-20 | |
| | | |||
* | | Pica/VertexShader: Move code around a bit. | 2014-12-20 | |
| | | |||
* | | Pica/VertexShader: Some cleanups using std::array. | 2014-12-20 | |
| | | |||
* | | Pica/VertexShader: Support negating src2. | 2014-12-20 | |
| | | |||
* | | Pica/DebugUtils: Replace duplicated SHBIN structures in favor of nihstro's ones. | 2014-12-20 | |
| | | |||
* | | Pica/VertexShader: Remove (now) duplicated shader bytecode definitions in ↵ | 2014-12-20 | |
| | | | | | | | | favor of nihstro's ones. | ||
* | | Pica/DebugUtils: Add an event triggered after loading a vertex. | 2014-12-20 | |
| | | |||
* | | Pica/PrimitiveAssembly: Implement triangle strips. | 2014-12-20 | |
| | | |||
* | | Pica/CommandProcessor: Add a safety check for invalid (?) GPU configurations. | 2014-12-20 | |
| | | |||
* | | Pica/CommandProcessor: Fix vertex decoding if multiple memory areas are ↵ | 2014-12-20 | |
| | | | | | | | | accessed for different attributes. | ||
* | | Add support for a ridiculous number of texture formats. | 2014-12-20 | |
| | | |||
* | | Pica: Unify ugly address translation hacks. | 2014-12-20 | |
| | | |||
* | | Pica: Further improve Tev emulation. | 2014-12-20 | |
| | | |||
* | | Pica: Merge texture lookup logic for DebugUtils and Rasterizer. | 2014-12-20 | |
| | | | | | | | | This effectively adds support for a lot texture formats in the rasterizer. | ||
* | | Pica: Implement texture wrapping. | 2014-12-20 | |
| | | |||
* | | Pica/DebugUtils: Add support for RGBA8, RGBA5551, RGBA4 and A8 texture formats. | 2014-12-20 | |
| | | |||
* | | Pica: Initial support for multitexturing. | 2014-12-20 | |
| | | |||
* | | Clean up some warnings | 2014-12-20 | |
| | | |||
* | | Properly erase/remove an observer | 2014-12-19 | |
|/ | |||
* | Convert old logging calls to new logging macros | 2014-12-13 | |
| | |||
* | Merge pull request #267 from bunnei/apt-shared-font | 2014-12-12 | |
|\ | | | | | APT shared font loading | ||
* \ | Merge pull request #261 from neobrain/boost | 2014-12-12 | |
|\ \ | | | | | | | Add Boost as a submodule and add some minor cleanups using Boost.Range | ||
| | * | MemMap: Renamed "GSP" heap to "linear", as this is not specific to GSP. | 2014-12-12 | |
| |/ |/| | | | | | - Linear simply indicates that the mapped physical address is always MappedVAddr+0x0C000000, thus this memory can be used for hardware devices' DMA (such as the GPU). | ||
* | | GSP: Trigger GPU interrupts at more accurate locations. | 2014-12-09 | |
| | |