aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/video_core
Commit message (Collapse)AuthorAge
* Rasterizer: Pre-divide vertex attributes by WGravatar Yuri Kunde Schlesner2014-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 swizzlingGravatar Yuri Kunde Schlesner2014-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 eliminationGravatar Yuri Kunde Schlesner2014-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 passGravatar Yuri Kunde Schlesner2014-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 allocationsGravatar Yuri Kunde Schlesner2014-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 denormalsGravatar Yuri Kunde Schlesner2014-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.Gravatar bunnei2014-12-28
|
* Merge pull request #327 from Apology11/masterGravatar bunnei2014-12-26
|\ | | | | Fix visual studio ambiguous symbol error
* \ Merge pull request #322 from chinhodado/masterGravatar bunnei2014-12-22
|\ \ | | | | | | More warning cleanups
* \ \ Merge pull request #291 from purpasmart96/licenseGravatar bunnei2014-12-21
|\ \ \ | | | | | | | | License change
| | | * Fix visual studio ambiguous symbol errorGravatar Apology112014-12-21
| |_|/ |/| |
| | * More warning cleanupsGravatar Chin2014-12-21
| |/ |/|
| * License changeGravatar purpasmart962014-12-20
| |
* | Pica/VertexShader: Promote a log message to critical status.Gravatar Tony Wasserka2014-12-20
| |
* | Pica/VertexShader: Small optimization.Gravatar Tony Wasserka2014-12-20
| |
* | Pica/VertexShader: Be robust against invalid inputs.Gravatar Tony Wasserka2014-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.Gravatar Tony Wasserka2014-12-20
| |
* | Pica/DebugUtils: Further cleanups to LookupTexture.Gravatar Tony Wasserka2014-12-20
| |
* | Pica/DebugUtils: Fix two warnings.Gravatar Tony Wasserka2014-12-20
| |
* | Pica/DebugUtils: Better document LookupTexture.Gravatar Tony Wasserka2014-12-20
| |
* | Pica/Rasterizer: Get rid of C-style casts.Gravatar Tony Wasserka2014-12-20
| |
* | Pica/DebugUtils: Make a number of variables static.Gravatar Tony Wasserka2014-12-20
| | | | | | | | Makes for cleaner and faster code.
* | Pica/VertexShader: Cleanup flow control logic and implement CMP/IFU ↵Gravatar Tony Wasserka2014-12-20
| | | | | | | | instructions.
* | Pica/VertexShader: Run instruction handlers according to the effective opcode.Gravatar Tony Wasserka2014-12-20
| | | | | | | | This allows for proper emulation of the different CMP/LRP/MAD instructions.
* | Pica/VertexShader: Implement MAX instructions.Gravatar Tony Wasserka2014-12-20
| |
* | Pica: Add support for boolean uniforms.Gravatar Tony Wasserka2014-12-20
| |
* | Pica/VertexShader: Add support for MOVA, CMP and IFC.Gravatar Tony Wasserka2014-12-20
| |
* | Pica/VertexShader: Move code around a bit.Gravatar Tony Wasserka2014-12-20
| |
* | Pica/VertexShader: Some cleanups using std::array.Gravatar Tony Wasserka2014-12-20
| |
* | Pica/VertexShader: Support negating src2.Gravatar Tony Wasserka2014-12-20
| |
* | Pica/DebugUtils: Replace duplicated SHBIN structures in favor of nihstro's ones.Gravatar Tony Wasserka2014-12-20
| |
* | Pica/VertexShader: Remove (now) duplicated shader bytecode definitions in ↵Gravatar Tony Wasserka2014-12-20
| | | | | | | | favor of nihstro's ones.
* | Pica/DebugUtils: Add an event triggered after loading a vertex.Gravatar Tony Wasserka2014-12-20
| |
* | Pica/PrimitiveAssembly: Implement triangle strips.Gravatar Tony Wasserka2014-12-20
| |
* | Pica/CommandProcessor: Add a safety check for invalid (?) GPU configurations.Gravatar Tony Wasserka2014-12-20
| |
* | Pica/CommandProcessor: Fix vertex decoding if multiple memory areas are ↵Gravatar Tony Wasserka2014-12-20
| | | | | | | | accessed for different attributes.
* | Add support for a ridiculous number of texture formats.Gravatar Tony Wasserka2014-12-20
| |
* | Pica: Unify ugly address translation hacks.Gravatar Tony Wasserka2014-12-20
| |
* | Pica: Further improve Tev emulation.Gravatar Tony Wasserka2014-12-20
| |
* | Pica: Merge texture lookup logic for DebugUtils and Rasterizer.Gravatar Tony Wasserka2014-12-20
| | | | | | | | This effectively adds support for a lot texture formats in the rasterizer.
* | Pica: Implement texture wrapping.Gravatar Tony Wasserka2014-12-20
| |
* | Pica/DebugUtils: Add support for RGBA8, RGBA5551, RGBA4 and A8 texture formats.Gravatar Tony Wasserka2014-12-20
| |
* | Pica: Initial support for multitexturing.Gravatar Tony Wasserka2014-12-20
| |
* | Clean up some warningsGravatar Chin2014-12-20
| |
* | Properly erase/remove an observerGravatar chinhodado2014-12-19
|/
* Convert old logging calls to new logging macrosGravatar Yuri Kunde Schlesner2014-12-13
|
* Merge pull request #267 from bunnei/apt-shared-fontGravatar bunnei2014-12-12
|\ | | | | APT shared font loading
* \ Merge pull request #261 from neobrain/boostGravatar Tony Wasserka2014-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.Gravatar bunnei2014-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.Gravatar bunnei2014-12-09
| |