Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorClément Foucault <foucault.clem@gmail.com>2017-02-07 13:20:15 +0300
committerDalai Felinto <dfelinto@gmail.com>2017-02-07 13:31:22 +0300
commit83adc544382689217e19564fd5f2dd62160956cb (patch)
tree1026a590c1079b4907a6cab43e2c5759339c4350 /source/blender/draw/CMakeLists.txt
parentaeb8e81f2741aabc95d14bce7a83cef45481959c (diff)
Clay-Engine (merge clay-engine)
Initial work by Clément Foucault with contributions from Dalai Felinto (mainly per-collection engine settings logic, and depsgraph iterator placeholder). This makes Blender require OpenGL 3.3. Which means Intel graphic card and OSX will break. Disable CLAY_ENGINE in CMake in those cases. This is a prototype render engine intended to help the design of real render engines. This is mainly an engine with enphasis in matcap and ambient occlusion. Implemented Features -------------------- * Clay Render Engine, following the new API, to be used as reference for future engines * A more complete Matcap customization with more options * Per-Collection render engine settings * New Ground Truth AO - not enabled Missing Features ---------------- * Finish object edit mode - Fix shaders to use new matrix - Fix artifacts when edge does off screen - Fix depth issue - Selection sillhouette - Mesh wires - Use mesh normals (for higher quality matcap) - Non-Mesh objects drawing - Widget drawing - Performance issues * Finish mesh edit mode - Derived-Mesh-less edit mode API (mesh_rende.c) * General edit mode - Per-collection edit mode settings * General engines - Per-collection engine settings (they are their, but they still need to be flushed by depsgraph, and used by the drawing code)
Diffstat (limited to 'source/blender/draw/CMakeLists.txt')
-rw-r--r--source/blender/draw/CMakeLists.txt40
1 files changed, 28 insertions, 12 deletions
diff --git a/source/blender/draw/CMakeLists.txt b/source/blender/draw/CMakeLists.txt
index 60449ebc600..d5b54e8a746 100644
--- a/source/blender/draw/CMakeLists.txt
+++ b/source/blender/draw/CMakeLists.txt
@@ -26,37 +26,53 @@
set(INC
.
intern
- nodes
- operations
+ engines/clay
+
../blenkernel
../blenlib
../blentranslation
../imbuf
+ ../depsgraph
../makesdna
../makesrna
- ../windowmanager
- ../nodes
- ../nodes/composite
- ../nodes/intern
+ ../gpu
+ ../editors/include
+ ../editors/space_view3d
../render/extern/include
../render/intern/include
- ../../../extern/clew/include
+
+ ../../../intern/glew-mx
../../../intern/guardedalloc
- ../../../intern/atomic
)
set(INC_SYS
-
+ ${GLEW_INCLUDE_PATH}
)
set(SRC
- DRW_defines.h
+ intern/draw_manager.c
+ intern/draw_mode_pass.c
+ intern/draw_cache.c
+ engines/clay/clay.c
-)
+ intern/DRW_render.h
+ intern/draw_mode_pass.h
+ intern/draw_cache.h
+ engines/clay/clay.h
-list(APPEND INC
+ ./DRW_engine.h
)
+if(WITH_CLAY_ENGINE)
+ add_definitions(-DWITH_CLAY_ENGINE)
endif()
+data_to_c_simple(engines/clay/shaders/clay_frag.glsl SRC)
+data_to_c_simple(engines/clay/shaders/clay_vert.glsl SRC)
+data_to_c_simple(engines/clay/shaders/ssao_alchemy.glsl SRC)
+data_to_c_simple(engines/clay/shaders/ssao_groundtruth.glsl SRC)
+
+list(APPEND INC
+)
+
blender_add_lib(bf_draw "${SRC}" "${INC}" "${INC_SYS}")