mirror of
https://github.com/starr-dusT/citra.git
synced 2024-10-02 10:26:17 -07:00
![GPUCode](/assets/img/avatar_default.png)
* rasterizer_cache: Switch to template * Eliminates all opengl references in the rasterizer cache headers thus completing the backend abstraction * rasterizer_cache: Switch to page table * Surface storage isn't particularly interval sensitive so we can use a page table to make it faster * rasterizer_cache: Move sampler management out of rasterizer cache * rasterizer_cache: Remove shared_ptr usage * Switches to yuzu's slot vector for improved memory locality. * rasterizer_cache: Rework reinterpretation lookup * citra_qt: Per game texture filter * rasterizer_cache: Log additional settings * gl_texture_runtime: Resolve shadow map comment * rasterizer_cache: Don't use float for viewport * gl_texture_runtime: Fix custom allocation recycling * rasterizer_cache: Minor cleanups * Cleanup texture cubes when all the faces have been unregistered from the cache * custom_tex_manager: Allow multiple hash mappings per texture * code: Move slot vector to common * rasterizer_cache: Prevent texture cube crashes * rasterizer_cache: Improve mipmap validation * CanSubRect now works properly when validating multi-level surfaces, for example Dark Moon validates a 4 level surface from a 3 level one and it works * gl_blit_handler: Unbind sampler on reinterpretation
140 lines
4.4 KiB
CMake
140 lines
4.4 KiB
CMake
add_subdirectory(host_shaders)
|
|
|
|
add_library(video_core STATIC
|
|
command_processor.cpp
|
|
command_processor.h
|
|
custom_textures/custom_format.cpp
|
|
custom_textures/custom_format.h
|
|
custom_textures/custom_tex_manager.cpp
|
|
custom_textures/custom_tex_manager.h
|
|
custom_textures/material.cpp
|
|
custom_textures/material.h
|
|
debug_utils/debug_utils.cpp
|
|
debug_utils/debug_utils.h
|
|
geometry_pipeline.cpp
|
|
geometry_pipeline.h
|
|
gpu_debugger.h
|
|
pica.cpp
|
|
pica.h
|
|
pica_state.h
|
|
pica_types.h
|
|
precompiled_headers.h
|
|
primitive_assembly.cpp
|
|
primitive_assembly.h
|
|
rasterizer_accelerated.cpp
|
|
rasterizer_accelerated.h
|
|
rasterizer_interface.h
|
|
regs.cpp
|
|
regs.h
|
|
regs_framebuffer.h
|
|
regs_lighting.h
|
|
regs_pipeline.h
|
|
regs_rasterizer.h
|
|
regs_shader.h
|
|
regs_texturing.h
|
|
renderer_base.cpp
|
|
renderer_base.h
|
|
rasterizer_cache/framebuffer_base.cpp
|
|
rasterizer_cache/framebuffer_base.h
|
|
rasterizer_cache/pixel_format.cpp
|
|
rasterizer_cache/pixel_format.h
|
|
rasterizer_cache/rasterizer_cache.cpp
|
|
rasterizer_cache/rasterizer_cache.h
|
|
rasterizer_cache/rasterizer_cache_base.h
|
|
rasterizer_cache/sampler_params.h
|
|
rasterizer_cache/surface_base.cpp
|
|
rasterizer_cache/surface_base.h
|
|
rasterizer_cache/surface_params.cpp
|
|
rasterizer_cache/surface_params.h
|
|
rasterizer_cache/texture_codec.h
|
|
rasterizer_cache/utils.cpp
|
|
rasterizer_cache/utils.h
|
|
renderer_opengl/frame_dumper_opengl.cpp
|
|
renderer_opengl/frame_dumper_opengl.h
|
|
renderer_opengl/gl_blit_helper.cpp
|
|
renderer_opengl/gl_blit_helper.h
|
|
renderer_opengl/gl_driver.cpp
|
|
renderer_opengl/gl_driver.h
|
|
renderer_opengl/gl_rasterizer.cpp
|
|
renderer_opengl/gl_rasterizer.h
|
|
renderer_opengl/gl_rasterizer_cache.cpp
|
|
renderer_opengl/gl_resource_manager.cpp
|
|
renderer_opengl/gl_resource_manager.h
|
|
renderer_opengl/gl_shader_decompiler.cpp
|
|
renderer_opengl/gl_shader_decompiler.h
|
|
renderer_opengl/gl_shader_disk_cache.cpp
|
|
renderer_opengl/gl_shader_disk_cache.h
|
|
renderer_opengl/gl_shader_gen.cpp
|
|
renderer_opengl/gl_shader_gen.h
|
|
renderer_opengl/gl_shader_manager.cpp
|
|
renderer_opengl/gl_shader_manager.h
|
|
renderer_opengl/gl_shader_util.cpp
|
|
renderer_opengl/gl_shader_util.h
|
|
renderer_opengl/gl_state.cpp
|
|
renderer_opengl/gl_state.h
|
|
renderer_opengl/gl_stream_buffer.cpp
|
|
renderer_opengl/gl_stream_buffer.h
|
|
renderer_opengl/gl_texture_runtime.cpp
|
|
renderer_opengl/gl_texture_runtime.h
|
|
renderer_opengl/gl_vars.cpp
|
|
renderer_opengl/gl_vars.h
|
|
renderer_opengl/pica_to_gl.h
|
|
renderer_opengl/post_processing_opengl.cpp
|
|
renderer_opengl/post_processing_opengl.h
|
|
renderer_opengl/renderer_opengl.cpp
|
|
renderer_opengl/renderer_opengl.h
|
|
renderer_software/rasterizer.cpp
|
|
renderer_software/rasterizer.h
|
|
renderer_software/renderer_software.cpp
|
|
renderer_software/renderer_software.h
|
|
renderer_software/sw_clipper.cpp
|
|
renderer_software/sw_clipper.h
|
|
renderer_software/sw_framebuffer.cpp
|
|
renderer_software/sw_framebuffer.h
|
|
renderer_software/sw_lighting.cpp
|
|
renderer_software/sw_lighting.h
|
|
renderer_software/sw_proctex.cpp
|
|
renderer_software/sw_proctex.h
|
|
renderer_software/sw_rasterizer.cpp
|
|
renderer_software/sw_rasterizer.h
|
|
renderer_software/sw_texturing.cpp
|
|
renderer_software/sw_texturing.h
|
|
shader/debug_data.h
|
|
shader/shader.cpp
|
|
shader/shader.h
|
|
shader/shader_interpreter.cpp
|
|
shader/shader_interpreter.h
|
|
shader/shader_jit_x64.cpp
|
|
shader/shader_jit_x64_compiler.cpp
|
|
shader/shader_jit_x64.h
|
|
shader/shader_jit_x64_compiler.h
|
|
shader/shader_uniforms.cpp
|
|
shader/shader_uniforms.h
|
|
texture/etc1.cpp
|
|
texture/etc1.h
|
|
texture/texture_decode.cpp
|
|
texture/texture_decode.h
|
|
utils.h
|
|
vertex_loader.cpp
|
|
vertex_loader.h
|
|
video_core.cpp
|
|
video_core.h
|
|
)
|
|
|
|
add_dependencies(video_core host_shaders)
|
|
target_include_directories(video_core PRIVATE ${HOST_SHADERS_INCLUDE})
|
|
|
|
create_target_directory_groups(video_core)
|
|
|
|
target_link_libraries(video_core PUBLIC citra_common citra_core)
|
|
target_link_libraries(video_core PRIVATE Boost::serialization dds-ktx glad json-headers nihstro-headers tsl::robin_map)
|
|
set_target_properties(video_core PROPERTIES INTERPROCEDURAL_OPTIMIZATION ${ENABLE_LTO})
|
|
|
|
if ("x86_64" IN_LIST ARCHITECTURE)
|
|
target_link_libraries(video_core PUBLIC xbyak)
|
|
endif()
|
|
|
|
if (CITRA_USE_PRECOMPILED_HEADERS)
|
|
target_precompile_headers(video_core PRIVATE precompiled_headers.h)
|
|
endif()
|