summaryrefslogtreecommitdiffstats
path: root/src/video_core (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Rewrite of OpenGL renderer, including OS X supportKevin Hartman2014-08-268-211/+340
| | | | | | Screen contents are now displayed using textured quads. This can be updated to expose an FBO once an OpenGL backend for when Pica rendering is being worked on. That FBO's texture can then be applied to the quads. Previously, FBO blitting was used in order to display screen contents, which did not work on OS X. The new textured quad approach is less of a compatibility risk.
* Pica/Rasterizer: Clarify a TODO.Tony Wasserka2014-08-251-1/+3
|
* Pica/VertexShader: Fix a bug in the call stack handling.Tony Wasserka2014-08-251-2/+3
|
* Math: Warning fixes.Tony Wasserka2014-08-251-14/+23
|
* Pica: Consolidate the primitive assembly code in PrimitiveAssembly and GeometryDumper.Tony Wasserka2014-08-255-46/+74
|
* Pica/Rasterizer: Add texturing support.Tony Wasserka2014-08-253-18/+69
|
* Pica/DebugUtils: Add convenient tev setup printer.Tony Wasserka2014-08-253-0/+101
|
* Pica/Rasterizer: Add initial implementation of texture combiners.Tony Wasserka2014-08-252-2/+225
|
* Pica: Add support for dumping textures.Tony Wasserka2014-08-253-1/+177
|
* Pica/Math: Improved the design of the Vec2/Vec3/Vec4 classes and simplified rasterizer code accordingly.Tony Wasserka2014-08-253-98/+133
| | | | | | - Swizzlers now return const objects so that things like "first_vec4.xyz() = some_vec3" now will fail to compile (ideally we should support some vector holding references to make this actually work). - The methods "InsertBeforeX/Y/Z" and "Append" have been replaced by more versions of MakeVec, which now also supports building new vectors from vectors. - Vector library now follows C++ type promotion rules (hence, the result of Vec2<u8> with another Vec2<u8> is now a Vec2<int>).
* Pica/VertexShader: Fix a bug in the bitfield definitions and add the "negate" field for swizzlers.Tony Wasserka2014-08-252-14/+92
|
* Pica/citra-qt: Replace command list view and command list debugging code with something more sophisticated.Tony Wasserka2014-08-254-63/+78
|
* Pica/CommandProcessor: Implement parameter masking.Tony Wasserka2014-08-252-6/+25
|
* Pica: Add debug utilities for dumping shaders.Tony Wasserka2014-08-254-1/+227
|
* Pica: Add debug utility functions for dumping geometry data.Tony Wasserka2014-08-256-4/+123
|
* Fix the threading for GL Context in Qt5.Sacha2014-08-241-1/+0
| | | | Connect the emu_thread start/finish to a moveContext slot.
* Merge pull request #42 from archshift/glexpbunnei2014-08-131-3/+2
|\ | | | | Use glewExperimental to fix crashes with citra-glfw
| * Use glewExperimental on Linux in order to fix GLFW-modearchshift2014-08-121-3/+2
| |
* | float24: Remove private default constructorarchshift2014-08-131-2/+0
|/ | | | Fixes building with clang.
* Pica: Add basic rasterizer.Tony Wasserka2014-08-127-2/+260
|
* Pica: Add triangle clipper.Tony Wasserka2014-08-127-8/+230
|
* Pica: Add primitive assembly stage.Tony Wasserka2014-08-127-2/+95
|
* Pica: Add vertex shader implementation.Tony Wasserka2014-08-127-10/+722
|
* Pica: Implement vertex loading.Tony Wasserka2014-08-122-8/+102
|
* Pica: Add register definition for vertex loading and rendering.Tony Wasserka2014-08-121-33/+128
|
* Pica: Add command processor.Tony Wasserka2014-08-127-5/+107
|
* Pica: Add float24 structure.Tony Wasserka2014-08-121-0/+75
| | | | | 24-bit floating points are used internally for calculations on the GPU, however the current code will still emulate that with 32-bit floating points. In the future we might want to accurately perform the calculations with correct bitness in the future, but for now we just wrap the calculations around this class.
* Video core: Add utility class for vector operations.Tony Wasserka2014-08-124-1/+582
| | | | | I wrote most of this for ppsspp, so I hold full copyright over it. In addition to the original release in ppsspp, this provides functionality to easily extend e.g. two-dimensional vectors to three-dimensional vectors.
* Pica/GPU: Change hardware registers to use physical addresses rather than virtual ones.Tony Wasserka2014-08-122-8/+8
| | | | | This cleans up the mess that address reading/writing had become and makes the code a *lot* more sensible. This adds a physical<->virtual address converter to mem_map.h. For further accuracy, we will want to properly extend this to support a wider range of address regions. For now, this makes simply homebrew applications work in a good manner though.
* Remove the fancy RegisterSet class introduced in 4c2bff61e.Tony Wasserka2014-08-122-100/+146
| | | | | While it was some nice and fancy template usage, it ultimately had many practical issues regarding length of involved expressions under regular usage as well as common code completion tools not being able to handle the structures. Instead, we now use a more conventional approach which is a lot more clean to use.
* GSP: Removed dumb GX prefixes to functions/structs in GSP namespace.bunnei2014-08-061-6/+6
| | | | - Various other cleanups.
* Use uniform formatting when printing hexadecimal numbers.Tony Wasserka2014-07-231-1/+1
|
* GSP: Clean up GX command processing a lot and treat command id as a u8 rather than a u32.Tony Wasserka2014-07-231-3/+2
| | | | Anonymous structs are not standard C++, hence don't use them.
* RegisterSet: Simplify code by using structs for register definition instead of unions.Tony Wasserka2014-07-231-9/+9
|
* GPU: Make use of RegisterSet.Tony Wasserka2014-07-231-26/+28
|
* Renderer: Fix component order in bottom framebuffer.Tony Wasserka2014-07-232-5/+4
|
* Renderer: Respect the active_fb GPU register.Tony Wasserka2014-07-231-2/+9
|
* Renderer: Add a few TODOs.Tony Wasserka2014-07-231-3/+10
|
* GPU debugger: Don't keep track of debugging data if no debugger views are active.Tony Wasserka2014-07-221-0/+6
|
* GPU debugger: Const correctness and build fix.Tony Wasserka2014-06-121-3/+3
|
* Preprocessor: #if's out OSX-specific GL changes on other platformsarchshift2014-06-121-0/+3
|
* Pica: Use some template magic to define register structures efficiently.Tony Wasserka2014-06-121-25/+102
|
* Further refine GPU command list debugging.Tony Wasserka2014-06-122-0/+17
|
* Refine command list debugging functionality and its qt interface.Tony Wasserka2014-06-122-8/+17
|
* citra-qt: Add command list view.Tony Wasserka2014-06-121-2/+2
|
* GPU debugger: Add functionality to inspect command lists.Tony Wasserka2014-06-121-1/+53
|
* video core: added PICA definitions file.Tony Wasserka2014-06-123-0/+37
|
* Rename LCD to GPU.Tony Wasserka2014-06-121-3/+3
|
* Add initial graphics debugger interface.Tony Wasserka2014-06-123-3/+102
|
* common_types: Changed BasicRect back to Rect, in the common namespacearchshift2014-05-202-3/+3
| | | | Only Rect is in the namespace for now; the rest of common should be added in the future
* Improved clarity and whitespacearchshift2014-05-202-3/+4
| | | | Changed QGL version to 3,2 in order to be less restrictive, yet it should still change up to 4,1 on OSX on Qt5.
* CMakeLists: rename HEADS, improved commentsarchshift2014-05-201-2/+2
| | | | Changes for clarity of comments, removed redundant compiler flags.
* Indent fixesarchshift2014-05-191-31/+31
|
* Merge remote-tracking branch 'upstream/master' into issue-7-fixarchshift2014-05-171-7/+6
|\
| * Update FlipFramebufferSethpaien2014-05-081-7/+6
| | | | | | Less calculations + fix
* | Fixed indentsarchshift2014-05-012-37/+35
| |
* | Reverse debugging changesarchshift2014-05-011-2/+0
| |
* | TGA dumps work, courtesy of @bunneiarchshift2014-05-012-36/+38
| |
* | OpenGL 3+ on OSX with GLFWarchshift2014-05-011-0/+2
| |
* | IT'S ALIVE!archshift2014-04-291-1/+6
| |
* | Xcode complains that the class name is redundant.archshift2014-04-281-1/+1
| |
* | Rect to BasicRectarchshift2014-04-282-3/+3
|/ | | | Somewhere along the line an OSX header had already taken the name Rect.
* removed DISALLOW_COPY_AND_ASSIGN in favor of NonCopyable classbunnei2014-04-282-4/+1
|
* fixed renderer to use correct framebuffer locationbunnei2014-04-272-8/+7
|
* fixed GL context acquire (applies to Qt GUI only)bunnei2014-04-221-0/+2
|
* renamed hw_lcd module to just lcdbunnei2014-04-181-1/+1
|
* fixed framebuffer color orderbunnei2014-04-171-1/+1
|
* removed hard-coded framebuffer addresses from renderer_opengl.cppbunnei2014-04-171-2/+4
|
* cleaned up some logging messagesbunnei2014-04-111-1/+2
|
* fixed a bunch of errors in CMakeListsbunnei2014-04-101-3/+3
|
* updated CMakeListsbunnei2014-04-101-16/+2
|
* fixed project includes to use new directory structurebunnei2014-04-099-38/+39
|
* got rid of 'src' folders in each sub-projectbunnei2014-04-097-0/+0
|
* fixed license header in video_corebunnei2014-04-097-182/+23
|
* - removed lots of unused code from gekkobunnei2014-04-093-367/+110
| | | | - updated code style/naming conventions
* added support for renderering the external framebuffersbunnei2014-04-072-20/+147
|
* added external framebuffer GL handlesbunnei2014-04-071-2/+11
|
* added initial renderer codebunnei2014-04-067-19/+534
|
* added video_core project to solutionbunnei2014-04-058-0/+567