mirror of
https://github.com/Almamu/linux-wallpaperengine.git
synced 2025-09-14 13:56:48 +08:00
+ More shader compilation steps (broke with the origina, still some information to change)
Signed-off-by: Alexis Maiquez Murcia <almamu@almamu.com>
This commit is contained in:
parent
ff59fcce41
commit
5944cb9715
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
||||
cmake-build-debug
|
6
.idea/vcs.xml
Normal file
6
.idea/vcs.xml
Normal file
@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="VcsDirectoryMappings">
|
||||
<mapping directory="$PROJECT_DIR$" vcs="Git" />
|
||||
</component>
|
||||
</project>
|
@ -12,7 +12,16 @@
|
||||
</configurations>
|
||||
</component>
|
||||
<component name="ChangeListManager">
|
||||
<list default="true" id="18bb2960-e23f-4286-86eb-946e53957973" name="Default" comment="" />
|
||||
<list default="true" id="18bb2960-e23f-4286-86eb-946e53957973" name="Default" comment="">
|
||||
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/BasicShaderLoader.cpp" beforeDir="false" afterPath="$PROJECT_DIR$/BasicShaderLoader.cpp" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/BasicShaderLoader.h" beforeDir="false" afterPath="$PROJECT_DIR$/BasicShaderLoader.h" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/CMakeLists.txt" beforeDir="false" afterPath="$PROJECT_DIR$/CMakeLists.txt" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/main.cpp" beforeDir="false" afterPath="$PROJECT_DIR$/main.cpp" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/nier_test.cpp" beforeDir="false" afterPath="$PROJECT_DIR$/nier_test.cpp" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/res/shaders/effects/waterripple_opengl.frag" beforeDir="false" afterPath="$PROJECT_DIR$/res/shaders/effects/waterripple_opengl.frag" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/res/shaders/effects/waterripple_opengl.vert" beforeDir="false" afterPath="$PROJECT_DIR$/res/shaders/effects/waterripple_opengl.vert" afterDir="false" />
|
||||
</list>
|
||||
<ignored path="$PROJECT_DIR$/cmake-build-debug/" />
|
||||
<option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
|
||||
<option name="TRACKING_ENABLED" value="true" />
|
||||
@ -24,13 +33,37 @@
|
||||
<component name="ExecutionTargetManager" SELECTED_TARGET="CMakeBuildProfile:Debug" />
|
||||
<component name="FileEditorManager">
|
||||
<leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
|
||||
<file leaf-file-name="BasicShaderLoader.cpp" pinned="false" current-in-tab="false">
|
||||
<file leaf-file-name="BasicShaderLoader.cpp" pinned="false" current-in-tab="true">
|
||||
<entry file="file://$PROJECT_DIR$/BasicShaderLoader.cpp">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="475">
|
||||
<caret line="115" column="56" lean-forward="false" selection-start-line="115" selection-start-column="56" selection-end-line="115" selection-end-column="56" />
|
||||
<state relative-caret-position="469">
|
||||
<caret line="292" column="17" selection-start-line="292" selection-start-column="17" selection-end-line="292" selection-end-column="17" />
|
||||
<folding>
|
||||
<element signature="e#0#21#0" expanded="true" />
|
||||
<element signature="e#0#30#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file leaf-file-name="waterripple_opengl.frag" pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/res/shaders/effects/waterripple_opengl.frag">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="585">
|
||||
<caret line="39" lean-forward="true" selection-start-line="39" selection-end-line="39" />
|
||||
<folding>
|
||||
<element signature="e#1411#1726#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file leaf-file-name="BasicShaderLoader.h" pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/BasicShaderLoader.h">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="435">
|
||||
<caret line="32" column="4" selection-start-line="32" selection-start-column="4" selection-end-line="32" selection-end-column="46" />
|
||||
<folding>
|
||||
<element signature="e#69#99#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
@ -39,8 +72,8 @@
|
||||
<file leaf-file-name="main.cpp" pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/main.cpp">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="396">
|
||||
<caret line="33" column="46" lean-forward="true" selection-start-line="33" selection-start-column="46" selection-end-line="33" selection-end-column="46" />
|
||||
<state relative-caret-position="520">
|
||||
<caret line="68" column="4" lean-forward="true" selection-start-line="68" selection-start-column="4" selection-end-line="68" selection-end-column="4" />
|
||||
<folding>
|
||||
<element signature="e#0#19#0" expanded="true" />
|
||||
</folding>
|
||||
@ -48,22 +81,11 @@
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file leaf-file-name="CMakeLists.txt" pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/CMakeLists.txt">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="192">
|
||||
<caret line="16" column="111" lean-forward="false" selection-start-line="16" selection-start-column="111" selection-end-line="16" selection-end-column="111" />
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file leaf-file-name="waterripple_opengl.vert" pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/res/shaders/effects/waterripple_opengl.vert">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="144">
|
||||
<caret line="12" column="22" lean-forward="false" selection-start-line="12" selection-start-column="22" selection-end-line="12" selection-end-column="22" />
|
||||
<folding />
|
||||
<state relative-caret-position="15">
|
||||
<caret line="1" lean-forward="true" selection-start-line="1" selection-end-line="1" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
@ -71,20 +93,19 @@
|
||||
<file leaf-file-name="common.h" pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/res/common.h">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="468">
|
||||
<caret line="39" column="1" lean-forward="false" selection-start-line="39" selection-start-column="1" selection-end-line="39" selection-end-column="1" />
|
||||
<folding />
|
||||
<state relative-caret-position="585">
|
||||
<caret line="39" column="1" selection-start-line="39" selection-start-column="1" selection-end-line="39" selection-end-column="1" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file leaf-file-name="nier_test.cpp" pinned="false" current-in-tab="true">
|
||||
<file leaf-file-name="nier_test.cpp" pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/nier_test.cpp">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="528">
|
||||
<caret line="44" column="64" lean-forward="false" selection-start-line="44" selection-start-column="64" selection-end-line="44" selection-end-column="64" />
|
||||
<state relative-caret-position="218">
|
||||
<caret line="166" selection-start-line="166" selection-end-line="166" />
|
||||
<folding>
|
||||
<element signature="e#0#21#0" expanded="true" />
|
||||
<element signature="e#0#30#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
@ -93,19 +114,8 @@
|
||||
<file leaf-file-name="nier_test.h" pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/nier_test.h">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="84">
|
||||
<caret line="7" column="42" lean-forward="false" selection-start-line="7" selection-start-column="42" selection-end-line="7" selection-end-column="42" />
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
</file>
|
||||
<file leaf-file-name="BasicShaderLoader.h" pinned="false" current-in-tab="false">
|
||||
<entry file="file://$PROJECT_DIR$/BasicShaderLoader.h">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="288">
|
||||
<caret line="24" column="4" lean-forward="false" selection-start-line="24" selection-start-column="4" selection-end-line="24" selection-end-column="56" />
|
||||
<folding />
|
||||
<state relative-caret-position="105">
|
||||
<caret line="7" column="42" selection-start-line="7" selection-start-column="42" selection-end-line="7" selection-end-column="42" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
@ -145,6 +155,9 @@
|
||||
<find>m_token</find>
|
||||
</findStrings>
|
||||
</component>
|
||||
<component name="Git.Settings">
|
||||
<option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$" />
|
||||
</component>
|
||||
<component name="IdeDocumentHistory">
|
||||
<option name="CHANGED_PATHS">
|
||||
<list>
|
||||
@ -154,7 +167,6 @@
|
||||
<option value="$PROJECT_DIR$/../lib/irrlicht/source/Irrlicht/COpenGLExtensionHandler.cpp" />
|
||||
<option value="$PROJECT_DIR$/../lib/irrlicht/source/Irrlicht/COpenGLDriver.cpp" />
|
||||
<option value="$PROJECT_DIR$/../lib/irrlicht/source/Irrlicht/CIrrDeviceLinux.cpp" />
|
||||
<option value="$PROJECT_DIR$/res/shaders/effects/waterripple_opengl.frag" />
|
||||
<option value="$PROJECT_DIR$/glsl/ast.h" />
|
||||
<option value="$PROJECT_DIR$/glsl/writer.cpp" />
|
||||
<option value="$PROJECT_DIR$/glsl/writer.h" />
|
||||
@ -163,15 +175,16 @@
|
||||
<option value="$PROJECT_DIR$/glsl/lexer.cpp" />
|
||||
<option value="$PROJECT_DIR$/glsl/parser.h" />
|
||||
<option value="$PROJECT_DIR$/glsl/parser.cpp" />
|
||||
<option value="$PROJECT_DIR$/CMakeLists.txt" />
|
||||
<option value="$PROJECT_DIR$/BasicShaderLoader.h" />
|
||||
<option value="$PROJECT_DIR$/nier_test.h" />
|
||||
<option value="$PROJECT_DIR$/common.h" />
|
||||
<option value="$PROJECT_DIR$/main.cpp" />
|
||||
<option value="$PROJECT_DIR$/res/common.h" />
|
||||
<option value="$PROJECT_DIR$/res/shaders/effects/waterripple_opengl.vert" />
|
||||
<option value="$PROJECT_DIR$/BasicShaderLoader.cpp" />
|
||||
<option value="$PROJECT_DIR$/CMakeLists.txt" />
|
||||
<option value="$PROJECT_DIR$/nier_test.cpp" />
|
||||
<option value="$PROJECT_DIR$/main.cpp" />
|
||||
<option value="$PROJECT_DIR$/BasicShaderLoader.h" />
|
||||
<option value="$PROJECT_DIR$/res/shaders/effects/waterripple_opengl.vert" />
|
||||
<option value="$PROJECT_DIR$/res/shaders/effects/waterripple_opengl.frag" />
|
||||
<option value="$PROJECT_DIR$/BasicShaderLoader.cpp" />
|
||||
</list>
|
||||
</option>
|
||||
</component>
|
||||
@ -184,49 +197,45 @@
|
||||
<component name="NodePackageJsonFileManager">
|
||||
<packageJsonPaths />
|
||||
</component>
|
||||
<component name="OCFindUsagesOptions" text="true" ivars="false" properties="true" derivedClasses="false" />
|
||||
<component name="OCFindUsagesOptions" text="false" ivars="false" properties="true" derivedClasses="false" />
|
||||
<component name="ProjectFrameBounds">
|
||||
<option name="x" value="1099" />
|
||||
<option name="y" value="469" />
|
||||
<option name="width" value="1882" />
|
||||
<option name="height" value="1032" />
|
||||
<option name="x" value="4" />
|
||||
<option name="y" value="14" />
|
||||
<option name="width" value="954" />
|
||||
<option name="height" value="1062" />
|
||||
</component>
|
||||
<component name="ProjectView">
|
||||
<navigator currentView="ProjectPane" proportions="" version="1">
|
||||
<flattenPackages />
|
||||
<showMembers />
|
||||
<showModules />
|
||||
<showLibraryContents />
|
||||
<hideEmptyPackages />
|
||||
<abbreviatePackageNames />
|
||||
<autoscrollToSource />
|
||||
<autoscrollFromSource />
|
||||
<sortByType />
|
||||
<manualOrder />
|
||||
<navigator proportions="" version="1">
|
||||
<foldersAlwaysOnTop value="true" />
|
||||
</navigator>
|
||||
<panes>
|
||||
<pane id="Scope" />
|
||||
<pane id="ProjectPane">
|
||||
<subPane>
|
||||
<expand>
|
||||
<path>
|
||||
<item name="wallengine" type="dad4c3:CidrFilesViewHelper$MyProjectTreeStructure$1" />
|
||||
<item name="temp" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="wallengine" type="b2602c69:ProjectViewProjectNode" />
|
||||
<item name="linux-wallpaper-engine" type="462c0819:PsiDirectoryNode" />
|
||||
</path>
|
||||
<path>
|
||||
<item name="wallengine" type="dad4c3:CidrFilesViewHelper$MyProjectTreeStructure$1" />
|
||||
<item name="temp" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="wallengine" type="b2602c69:ProjectViewProjectNode" />
|
||||
<item name="linux-wallpaper-engine" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="CMakeModules" type="462c0819:PsiDirectoryNode" />
|
||||
</path>
|
||||
<path>
|
||||
<item name="wallengine" type="b2602c69:ProjectViewProjectNode" />
|
||||
<item name="linux-wallpaper-engine" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="res" type="462c0819:PsiDirectoryNode" />
|
||||
</path>
|
||||
<path>
|
||||
<item name="wallengine" type="dad4c3:CidrFilesViewHelper$MyProjectTreeStructure$1" />
|
||||
<item name="temp" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="wallengine" type="b2602c69:ProjectViewProjectNode" />
|
||||
<item name="linux-wallpaper-engine" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="res" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="shaders" type="462c0819:PsiDirectoryNode" />
|
||||
</path>
|
||||
<path>
|
||||
<item name="wallengine" type="dad4c3:CidrFilesViewHelper$MyProjectTreeStructure$1" />
|
||||
<item name="temp" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="wallengine" type="b2602c69:ProjectViewProjectNode" />
|
||||
<item name="linux-wallpaper-engine" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="res" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="shaders" type="462c0819:PsiDirectoryNode" />
|
||||
<item name="effects" type="462c0819:PsiDirectoryNode" />
|
||||
@ -239,6 +248,7 @@
|
||||
</component>
|
||||
<component name="PropertiesComponent">
|
||||
<property name="WebServerToolWindowFactoryState" value="false" />
|
||||
<property name="last_opened_file_path" value="$PROJECT_DIR$" />
|
||||
<property name="nodejs_interpreter_path.stuck_in_default_project" value="undefined stuck path" />
|
||||
<property name="nodejs_npm_path_reset_for_default_project" value="true" />
|
||||
</component>
|
||||
@ -266,12 +276,7 @@
|
||||
</option>
|
||||
</component>
|
||||
<component name="RunManager">
|
||||
<configuration name="Build All" type="CMakeRunConfiguration" factoryName="Application" PASS_PARENT_ENVS_2="true" CONFIG_NAME="Debug" RUN_TARGET_PROJECT_NAME="wallengine" RUN_TARGET_NAME="wallengine" EXPLICIT_BUILD_TARGET_NAME="all">
|
||||
<envs />
|
||||
</configuration>
|
||||
</component>
|
||||
<component name="ShelveChangesManager" show_recycled="false">
|
||||
<option name="remove_strategy" value="false" />
|
||||
<configuration name="Build All" type="CMakeRunConfiguration" factoryName="Application" PASS_PARENT_ENVS_2="true" CONFIG_NAME="Debug" RUN_TARGET_PROJECT_NAME="wallengine" RUN_TARGET_NAME="wallengine" EXPLICIT_BUILD_TARGET_NAME="all" />
|
||||
</component>
|
||||
<component name="SvnConfiguration">
|
||||
<configuration />
|
||||
@ -289,53 +294,55 @@
|
||||
<workItem from="1530742969892" duration="462000" />
|
||||
<workItem from="1530736243286" duration="1301000" />
|
||||
<workItem from="1530737554957" duration="12285000" />
|
||||
<workItem from="1530778987650" duration="8899000" />
|
||||
</task>
|
||||
<servers />
|
||||
</component>
|
||||
<component name="TimeTrackingManager">
|
||||
<option name="totallyTimeSpent" value="43407000" />
|
||||
<option name="totallyTimeSpent" value="52306000" />
|
||||
</component>
|
||||
<component name="ToolWindowManager">
|
||||
<frame x="1099" y="469" width="1882" height="1032" extended-state="0" />
|
||||
<frame x="4" y="14" width="1912" height="1062" extended-state="0" />
|
||||
<editor active="true" />
|
||||
<layout>
|
||||
<window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.20365395" sideWeight="0.5" order="0" side_tool="false" content_ui="combo" />
|
||||
<window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Messages" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32752994" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="CMake" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32861805" sideWeight="0.5" order="11" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="8" side_tool="true" content_ui="tabs" />
|
||||
<window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32861805" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="false" weight="0.33" sideWeight="0.5" order="9" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33949944" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="true" content_ui="tabs" />
|
||||
<window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.3297062" sideWeight="0.5" order="10" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="2" side_tool="true" content_ui="tabs" />
|
||||
<window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.24591948" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="SLIDING" type="SLIDING" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="2" side_tool="false" content_ui="combo" />
|
||||
<window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
|
||||
<window_info content_ui="combo" id="Project" order="0" visible="true" weight="0.20349762" />
|
||||
<window_info anchor="bottom" id="TODO" order="6" />
|
||||
<window_info anchor="bottom" id="Messages" order="7" weight="0.32694355" />
|
||||
<window_info anchor="bottom" id="CMake" order="11" weight="0.32861805" />
|
||||
<window_info anchor="bottom" id="Event Log" order="8" side_tool="true" />
|
||||
<window_info anchor="bottom" id="Find" order="1" weight="0.32800853" />
|
||||
<window_info anchor="bottom" id="Version Control" order="9" />
|
||||
<window_info anchor="bottom" id="Run" order="2" weight="0.33949944" />
|
||||
<window_info id="Structure" order="1" side_tool="true" weight="0.25" />
|
||||
<window_info anchor="bottom" id="Terminal" order="10" weight="0.3297062" />
|
||||
<window_info id="Favorites" order="2" side_tool="true" />
|
||||
<window_info active="true" anchor="bottom" id="Debug" order="3" visible="true" weight="0.26730564" />
|
||||
<window_info anchor="right" content_ui="combo" id="Hierarchy" order="2" weight="0.25" />
|
||||
<window_info anchor="bottom" id="Inspection" order="5" weight="0.4" />
|
||||
<window_info anchor="right" id="Commander" internal_type="SLIDING" order="0" type="SLIDING" weight="0.4" />
|
||||
<window_info anchor="right" id="Ant Build" order="1" weight="0.25" />
|
||||
<window_info anchor="bottom" id="Message" order="0" />
|
||||
<window_info anchor="bottom" id="Cvs" order="4" weight="0.25" />
|
||||
</layout>
|
||||
<layout-to-restore>
|
||||
<window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Messages" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32752994" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="CMake" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32861805" sideWeight="0.5" order="11" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="SLIDING" type="SLIDING" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="8" side_tool="true" content_ui="tabs" />
|
||||
<window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="false" weight="0.33" sideWeight="0.5" order="9" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33949944" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.3297062" sideWeight="0.5" order="10" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.40849674" sideWeight="0.5" order="0" side_tool="false" content_ui="combo" />
|
||||
<window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="2" side_tool="false" content_ui="combo" />
|
||||
<window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32908705" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="true" content_ui="tabs" />
|
||||
<window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
|
||||
<window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="2" side_tool="true" content_ui="tabs" />
|
||||
<window_info id="Debug" active="true" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.24591948" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
|
||||
<window_info anchor="right" content_ui="combo" id="Hierarchy" order="2" weight="0.25" />
|
||||
<window_info anchor="bottom" id="Run" order="2" weight="0.33949944" />
|
||||
<window_info anchor="right" id="Ant Build" order="1" weight="0.25" />
|
||||
<window_info content_ui="combo" id="Project" order="0" visible="true" weight="0.40849674" />
|
||||
<window_info id="Structure" order="1" side_tool="true" weight="0.25" />
|
||||
<window_info anchor="right" id="Commander" internal_type="SLIDING" order="0" type="SLIDING" weight="0.4" />
|
||||
<window_info anchor="bottom" id="TODO" order="6" />
|
||||
<window_info anchor="bottom" id="Version Control" order="9" show_stripe_button="false" />
|
||||
<window_info anchor="bottom" id="Find" order="1" weight="0.32908705" />
|
||||
<window_info active="true" anchor="bottom" id="Debug" order="3" visible="true" weight="0.24591948" />
|
||||
<window_info anchor="bottom" id="Messages" order="7" weight="0.32752994" />
|
||||
<window_info anchor="bottom" id="Terminal" order="10" weight="0.3297062" />
|
||||
<window_info anchor="bottom" id="Event Log" order="8" side_tool="true" />
|
||||
<window_info anchor="bottom" id="Inspection" order="5" weight="0.4" />
|
||||
<window_info anchor="bottom" id="Cvs" order="4" weight="0.25" />
|
||||
<window_info anchor="bottom" id="Message" order="0" />
|
||||
<window_info anchor="bottom" id="CMake" order="11" weight="0.32861805" />
|
||||
<window_info id="Favorites" order="2" side_tool="true" />
|
||||
</layout-to-restore>
|
||||
</component>
|
||||
<component name="TypeScriptGeneratedFilesManager">
|
||||
@ -367,391 +374,204 @@
|
||||
<line>309</line>
|
||||
<option name="timeStamp" value="45" />
|
||||
</line-breakpoint>
|
||||
<line-breakpoint enabled="true" type="com.jetbrains.cidr.execution.debugger.OCBreakpointType">
|
||||
<url>file://$PROJECT_DIR$/BasicShaderLoader.cpp</url>
|
||||
<line>336</line>
|
||||
<option name="timeStamp" value="83" />
|
||||
</line-breakpoint>
|
||||
</breakpoints>
|
||||
<option name="time" value="66" />
|
||||
<option name="time" value="84" />
|
||||
</breakpoint-manager>
|
||||
<watches-manager />
|
||||
</component>
|
||||
<component name="editorHistoryManager">
|
||||
<entry file="file://$PROJECT_DIR$/video.h">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="90">
|
||||
<caret line="6" column="0" lean-forward="false" selection-start-line="6" selection-start-column="0" selection-end-line="6" selection-end-column="0" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/video.cpp">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="12915">
|
||||
<caret line="861" column="4" lean-forward="false" selection-start-line="861" selection-start-column="4" selection-end-line="861" selection-end-column="4" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/video.h">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="90">
|
||||
<caret line="6" column="0" lean-forward="false" selection-start-line="6" selection-start-column="0" selection-end-line="6" selection-end-column="0" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/video.h" />
|
||||
<entry file="file:///usr/include/irrlicht/SIrrCreationParameters.h" />
|
||||
<entry file="file://$PROJECT_DIR$/video.cpp">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="11448">
|
||||
<caret line="954" column="4" lean-forward="false" selection-start-line="954" selection-start-column="4" selection-end-line="954" selection-end-column="4" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/CMakeModules/FindIrrlicht.cmake">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="288">
|
||||
<caret line="24" column="55" lean-forward="false" selection-start-line="24" selection-start-column="55" selection-end-line="24" selection-end-column="55" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/video.cpp" />
|
||||
<entry file="file:///usr/include/GL/gl.h">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="-2136">
|
||||
<caret line="659" column="8" lean-forward="false" selection-start-line="659" selection-start-column="8" selection-end-line="659" selection-end-column="8" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/../lib/irrlicht/source/Irrlicht/COpenGLExtensionHandler.cpp">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="300">
|
||||
<caret line="335" column="8" lean-forward="false" selection-start-line="335" selection-start-column="8" selection-end-line="335" selection-end-column="8" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/../lib/irrlicht/source/Irrlicht/COpenGLSLMaterialRenderer.cpp">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="-3733">
|
||||
<caret line="345" column="36" lean-forward="false" selection-start-line="345" selection-start-column="36" selection-end-line="345" selection-end-column="36" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/../lib/irrlicht/source/Irrlicht/glext.h">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="213">
|
||||
<caret line="1372" column="21" lean-forward="false" selection-start-line="1372" selection-start-column="21" selection-end-line="1372" selection-end-column="21" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/../lib/irrlicht/source/Irrlicht/glxext.h">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="186">
|
||||
<caret line="595" column="56" lean-forward="false" selection-start-line="595" selection-start-column="23" selection-end-line="595" selection-end-column="56" />
|
||||
<caret line="659" column="8" selection-start-line="659" selection-start-column="8" selection-end-line="659" selection-end-column="8" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/../lib/irrlicht/source/Irrlicht/COpenGLExtensionHandler.cpp" />
|
||||
<entry file="file://$PROJECT_DIR$/../lib/irrlicht/source/Irrlicht/COpenGLSLMaterialRenderer.cpp" />
|
||||
<entry file="file://$PROJECT_DIR$/../lib/irrlicht/source/Irrlicht/glext.h" />
|
||||
<entry file="file://$PROJECT_DIR$/../lib/irrlicht/source/Irrlicht/glxext.h" />
|
||||
<entry file="file:///usr/include/irrlicht/irrlicht.h" />
|
||||
<entry file="file://$PROJECT_DIR$/../lib/irrlicht/include/IrrCompileConfig.h">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="1248">
|
||||
<caret line="104" column="8" lean-forward="false" selection-start-line="104" selection-start-column="8" selection-end-line="104" selection-end-column="8" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/../lib/irrlicht/source/Irrlicht/COpenGLTexture.cpp">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="3840">
|
||||
<caret line="320" column="40" lean-forward="false" selection-start-line="320" selection-start-column="26" selection-end-line="320" selection-end-column="40" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/../lib/irrlicht/include/IrrCompileConfig.h" />
|
||||
<entry file="file://$PROJECT_DIR$/../lib/irrlicht/source/Irrlicht/COpenGLTexture.cpp" />
|
||||
<entry file="file:///usr/include/GL/glx.h">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="142">
|
||||
<caret line="271" column="18" lean-forward="false" selection-start-line="271" selection-start-column="18" selection-end-line="271" selection-end-column="18" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/../lib/irrlicht/source/Irrlicht/COpenGLDriver.h">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="1716">
|
||||
<caret line="143" column="50" lean-forward="false" selection-start-line="143" selection-start-column="50" selection-end-line="143" selection-end-column="50" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/../lib/irrlicht/source/Irrlicht/COpenGLExtensionHandler.h">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="15096">
|
||||
<caret line="1258" column="13" lean-forward="false" selection-start-line="1258" selection-start-column="10" selection-end-line="1258" selection-end-column="13" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/../lib/irrlicht/source/Irrlicht/COpenGLDriver.cpp">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="9048">
|
||||
<caret line="754" column="16" lean-forward="false" selection-start-line="754" selection-start-column="16" selection-end-line="754" selection-end-column="16" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/../lib/irrlicht/source/Irrlicht/CIrrDeviceLinux.cpp">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="8712">
|
||||
<caret line="726" column="33" lean-forward="false" selection-start-line="726" selection-start-column="33" selection-end-line="726" selection-end-column="33" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/res/shaders/effects/waterripple_opengl.frag">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="0">
|
||||
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/../lib/glsl-parser/lexemes.h">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="233">
|
||||
<caret line="275" column="12" lean-forward="false" selection-start-line="275" selection-start-column="12" selection-end-line="275" selection-end-column="12" />
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/../lib/glsl-parser/lexer.h">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="0">
|
||||
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/../lib/glsl-parser/Makefile">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="276">
|
||||
<caret line="23" column="27" lean-forward="false" selection-start-line="23" selection-start-column="27" selection-end-line="23" selection-end-column="27" />
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/../lib/glsl-parser/main.cpp">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="-7044">
|
||||
<caret line="31" column="47" lean-forward="false" selection-start-line="31" selection-start-column="47" selection-end-line="31" selection-end-column="47" />
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/glsl/util.cpp">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="0">
|
||||
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/glsl/ast.cpp">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="-36">
|
||||
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/../lib/glsl-parser-master/main.cpp">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="0">
|
||||
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="587" selection-end-column="1" />
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/glsl/ast.h">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="174">
|
||||
<caret line="34" column="2" lean-forward="false" selection-start-line="34" selection-start-column="2" selection-end-line="34" selection-end-column="2" />
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/glsl/writer.h">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="60">
|
||||
<caret line="5" column="28" lean-forward="false" selection-start-line="5" selection-start-column="28" selection-end-line="5" selection-end-column="28" />
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/glsl/lexemes.h">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="168">
|
||||
<caret line="14" column="18" lean-forward="false" selection-start-line="14" selection-start-column="18" selection-end-line="14" selection-end-column="18" />
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/glsl/writer.cpp">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="489">
|
||||
<caret line="582" column="4" lean-forward="false" selection-start-line="582" selection-start-column="4" selection-end-line="582" selection-end-column="27" />
|
||||
<folding />
|
||||
<caret line="271" column="18" selection-start-line="271" selection-start-column="18" selection-end-line="271" selection-end-column="18" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/../lib/irrlicht/source/Irrlicht/COpenGLDriver.h" />
|
||||
<entry file="file://$PROJECT_DIR$/../lib/irrlicht/source/Irrlicht/COpenGLExtensionHandler.h" />
|
||||
<entry file="file://$PROJECT_DIR$/../lib/irrlicht/source/Irrlicht/COpenGLDriver.cpp" />
|
||||
<entry file="file://$PROJECT_DIR$/../lib/irrlicht/source/Irrlicht/CIrrDeviceLinux.cpp" />
|
||||
<entry file="file://$PROJECT_DIR$/../lib/glsl-parser/lexemes.h" />
|
||||
<entry file="file://$PROJECT_DIR$/../lib/glsl-parser/lexer.h" />
|
||||
<entry file="file://$PROJECT_DIR$/../lib/glsl-parser/Makefile" />
|
||||
<entry file="file://$PROJECT_DIR$/../lib/glsl-parser/main.cpp" />
|
||||
<entry file="file://$PROJECT_DIR$/glsl/util.cpp" />
|
||||
<entry file="file://$PROJECT_DIR$/glsl/ast.cpp" />
|
||||
<entry file="file://$PROJECT_DIR$/../lib/glsl-parser-master/main.cpp" />
|
||||
<entry file="file://$PROJECT_DIR$/glsl/ast.h" />
|
||||
<entry file="file://$PROJECT_DIR$/glsl/writer.h" />
|
||||
<entry file="file://$PROJECT_DIR$/glsl/lexemes.h" />
|
||||
<entry file="file://$PROJECT_DIR$/glsl/writer.cpp" />
|
||||
<entry file="file:///usr/include/c++/8.1.1/bits/alloc_traits.h">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="223">
|
||||
<caret line="474" column="0" lean-forward="false" selection-start-line="474" selection-start-column="0" selection-end-line="474" selection-end-column="0" />
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/glsl/util.h">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="261">
|
||||
<caret line="24" column="0" lean-forward="false" selection-start-line="24" selection-start-column="0" selection-end-line="24" selection-end-column="0" />
|
||||
<folding />
|
||||
<caret line="474" selection-start-line="474" selection-end-line="474" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/glsl/util.h" />
|
||||
<entry file="file:///usr/include/c++/8.1.1/ext/new_allocator.h">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="223">
|
||||
<caret line="78" column="0" lean-forward="false" selection-start-line="78" selection-start-column="0" selection-end-line="78" selection-end-column="0" />
|
||||
<folding />
|
||||
<caret line="78" selection-start-line="78" selection-end-line="78" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file:///usr/include/c++/8.1.1/bits/allocator.h">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="223">
|
||||
<caret line="130" column="0" lean-forward="false" selection-start-line="130" selection-start-column="0" selection-end-line="130" selection-end-column="0" />
|
||||
<folding />
|
||||
<caret line="130" selection-start-line="130" selection-end-line="130" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file:///usr/include/c++/8.1.1/bits/stl_vector.h">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="223">
|
||||
<caret line="394" column="0" lean-forward="false" selection-start-line="394" selection-start-column="0" selection-end-line="394" selection-end-column="0" />
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/glsl/lexer.h">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="525">
|
||||
<caret line="101" column="30" lean-forward="false" selection-start-line="101" selection-start-column="26" selection-end-line="101" selection-end-column="30" />
|
||||
<folding />
|
||||
<caret line="394" selection-start-line="394" selection-end-line="394" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/glsl/lexer.h" />
|
||||
<entry file="file:///usr/include/c++/8.1.1/bits/vector.tcc">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="1327">
|
||||
<caret line="472" column="0" lean-forward="false" selection-start-line="472" selection-start-column="0" selection-end-line="472" selection-end-column="0" />
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/glsl/parser.h">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="331">
|
||||
<caret line="78" column="4" lean-forward="false" selection-start-line="78" selection-start-column="4" selection-end-line="78" selection-end-column="58" />
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/glsl/lexer.cpp">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="-3">
|
||||
<caret line="484" column="9" lean-forward="false" selection-start-line="484" selection-start-column="9" selection-end-line="484" selection-end-column="9" />
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/glsl/parser.cpp">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="1855">
|
||||
<caret line="753" column="22" lean-forward="true" selection-start-line="753" selection-start-column="22" selection-end-line="753" selection-end-column="22" />
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/CMakeLists.txt">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="192">
|
||||
<caret line="16" column="111" lean-forward="false" selection-start-line="16" selection-start-column="111" selection-end-line="16" selection-end-column="111" />
|
||||
<folding />
|
||||
<caret line="472" selection-start-line="472" selection-end-line="472" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/glsl/parser.h" />
|
||||
<entry file="file://$PROJECT_DIR$/glsl/lexer.cpp" />
|
||||
<entry file="file://$PROJECT_DIR$/glsl/parser.cpp" />
|
||||
<entry file="file:///usr/include/c++/8.1.1/bits/basic_string.tcc">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="223">
|
||||
<caret line="218" column="0" lean-forward="false" selection-start-line="218" selection-start-column="0" selection-end-line="218" selection-end-column="0" />
|
||||
<folding />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/BasicShaderLoader.h">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="288">
|
||||
<caret line="24" column="4" lean-forward="false" selection-start-line="24" selection-start-column="4" selection-end-line="24" selection-end-column="56" />
|
||||
<folding />
|
||||
<caret line="218" selection-start-line="218" selection-end-line="218" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/nier_test.h">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="84">
|
||||
<caret line="7" column="42" lean-forward="false" selection-start-line="7" selection-start-column="42" selection-end-line="7" selection-end-column="42" />
|
||||
<folding />
|
||||
<state relative-caret-position="105">
|
||||
<caret line="7" column="42" selection-start-line="7" selection-start-column="42" selection-end-line="7" selection-end-column="42" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/common.h">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="96">
|
||||
<caret line="8" column="0" lean-forward="false" selection-start-line="8" selection-start-column="0" selection-end-line="8" selection-end-column="0" />
|
||||
<folding />
|
||||
<caret line="8" selection-start-line="8" selection-end-line="8" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/res/common.h">
|
||||
<entry file="file://$PROJECT_DIR$/CMakeModules/FindIrrlicht.cmake">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="468">
|
||||
<caret line="39" column="1" lean-forward="false" selection-start-line="39" selection-start-column="1" selection-end-line="39" selection-end-column="1" />
|
||||
<folding />
|
||||
<state>
|
||||
<caret column="50" selection-start-column="50" selection-end-column="50" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/CMakeLists.txt">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="165">
|
||||
<caret line="11" column="31" selection-start-line="11" selection-start-column="31" selection-end-line="11" selection-end-column="31" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/main.cpp">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="396">
|
||||
<caret line="33" column="46" lean-forward="true" selection-start-line="33" selection-start-column="46" selection-end-line="33" selection-end-column="46" />
|
||||
<state relative-caret-position="520">
|
||||
<caret line="68" column="4" lean-forward="true" selection-start-line="68" selection-start-column="4" selection-end-line="68" selection-end-column="4" />
|
||||
<folding>
|
||||
<element signature="e#0#19#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/BasicShaderLoader.cpp">
|
||||
<entry file="file://$PROJECT_DIR$/nier_test.cpp">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="475">
|
||||
<caret line="115" column="56" lean-forward="false" selection-start-line="115" selection-start-column="56" selection-end-line="115" selection-end-column="56" />
|
||||
<state relative-caret-position="218">
|
||||
<caret line="166" selection-start-line="166" selection-end-line="166" />
|
||||
<folding>
|
||||
<element signature="e#0#21#0" expanded="true" />
|
||||
<element signature="e#0#30#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/res/common.h">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="585">
|
||||
<caret line="39" column="1" selection-start-line="39" selection-start-column="1" selection-end-line="39" selection-end-column="1" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file:///usr/include/c++/8.1.1/bits/basic_string.h">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="227">
|
||||
<caret line="6032" selection-start-line="6032" selection-end-line="6032" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/BasicShaderLoader.h">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="435">
|
||||
<caret line="32" column="4" selection-start-line="32" selection-start-column="4" selection-end-line="32" selection-end-column="46" />
|
||||
<folding>
|
||||
<element signature="e#69#99#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file:///usr/include/c++/8.1.1/bits/stl_iterator.h">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="220">
|
||||
<caret line="845" selection-start-line="845" selection-end-line="845" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/res/shaders/effects/waterripple_opengl.vert">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="144">
|
||||
<caret line="12" column="22" lean-forward="false" selection-start-line="12" selection-start-column="22" selection-end-line="12" selection-end-column="22" />
|
||||
<folding />
|
||||
<state relative-caret-position="15">
|
||||
<caret line="1" lean-forward="true" selection-start-line="1" selection-end-line="1" />
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/nier_test.cpp">
|
||||
<entry file="file://$PROJECT_DIR$/res/shaders/effects/waterripple_opengl.frag">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="528">
|
||||
<caret line="44" column="64" lean-forward="false" selection-start-line="44" selection-start-column="64" selection-end-line="44" selection-end-column="64" />
|
||||
<state relative-caret-position="585">
|
||||
<caret line="39" lean-forward="true" selection-start-line="39" selection-end-line="39" />
|
||||
<folding>
|
||||
<element signature="e#0#21#0" expanded="true" />
|
||||
<element signature="e#1411#1726#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
</entry>
|
||||
<entry file="file://$PROJECT_DIR$/BasicShaderLoader.cpp">
|
||||
<provider selected="true" editor-type-id="text-editor">
|
||||
<state relative-caret-position="469">
|
||||
<caret line="292" column="17" selection-start-line="292" selection-start-column="17" selection-end-line="292" selection-end-column="17" />
|
||||
<folding>
|
||||
<element signature="e#0#30#0" expanded="true" />
|
||||
</folding>
|
||||
</state>
|
||||
</provider>
|
||||
|
@ -1,4 +1,4 @@
|
||||
#include <irrlicht.h>
|
||||
#include <irrlicht/irrlicht.h>
|
||||
#include <iostream>
|
||||
#include <fstream>
|
||||
#include <string>
|
||||
@ -6,11 +6,19 @@
|
||||
#include "nier_test.h"
|
||||
#include "common.h"
|
||||
|
||||
BasicShaderLoader::BasicShaderLoader (irr::io::path file, Type type)
|
||||
BasicShaderLoader::BasicShaderLoader (irr::io::path file, Type type, bool recursive = false)
|
||||
{
|
||||
this->m_content = "#version 120\n"
|
||||
"#define texSample2D texture2D\n"
|
||||
"#define frac fract\n";
|
||||
// begin with an space so it gets ignored properly on parse
|
||||
if (recursive == false)
|
||||
{
|
||||
this->m_content = "#version 120\n"
|
||||
"#define texSample2D texture2D\n"
|
||||
"#define frac fract\n";
|
||||
}
|
||||
else
|
||||
{
|
||||
this->m_content = "";
|
||||
}
|
||||
|
||||
std::ifstream _in (file.c_str ());
|
||||
this->m_content.append (std::istreambuf_iterator<char> (_in), std::istreambuf_iterator<char> ());
|
||||
@ -20,7 +28,7 @@ BasicShaderLoader::BasicShaderLoader (irr::io::path file, Type type)
|
||||
bool BasicShaderLoader::peekString(std::string str, std::string::const_iterator& it)
|
||||
{
|
||||
std::string::const_iterator check = str.begin();
|
||||
std::string::const_iterator cur = it + 1;
|
||||
std::string::const_iterator cur = it;
|
||||
|
||||
while (cur != this->m_content.end () && check != str.end ())
|
||||
{
|
||||
@ -29,6 +37,11 @@ bool BasicShaderLoader::peekString(std::string str, std::string::const_iterator&
|
||||
cur ++; check ++;
|
||||
}
|
||||
|
||||
if (cur == this->m_content.end ())
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
if (check != str.end ())
|
||||
{
|
||||
return false;
|
||||
@ -39,11 +52,87 @@ bool BasicShaderLoader::peekString(std::string str, std::string::const_iterator&
|
||||
return true;
|
||||
}
|
||||
|
||||
bool BasicShaderLoader::expectSemicolon (std::string::const_iterator& it)
|
||||
{
|
||||
if (*it != ';')
|
||||
{
|
||||
this->m_error = true;
|
||||
this->m_errorInfo = "Expected semicolon but got " + *it;
|
||||
return false;
|
||||
}
|
||||
|
||||
it ++;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
void BasicShaderLoader::ignoreSpaces(std::string::const_iterator &it)
|
||||
{
|
||||
while (it != this->m_content.end() && (*it == ' ' || *it == '\t')) it ++;
|
||||
}
|
||||
|
||||
void BasicShaderLoader::ignoreUpToNextLineFeed (std::string::const_iterator& it)
|
||||
{
|
||||
while (it != this->m_content.end() && *it != '\n') it ++;
|
||||
}
|
||||
|
||||
void BasicShaderLoader::ignoreUpToBlockCommentEnd (std::string::const_iterator& it)
|
||||
{
|
||||
while (it != this->m_content.end() && this->peekString ("*/", it) == false) it ++;
|
||||
}
|
||||
|
||||
std::string BasicShaderLoader::extractType (std::string::const_iterator& it)
|
||||
{
|
||||
std::vector<std::string>::const_iterator cur = sTypes.begin ();
|
||||
std::vector<std::string>::const_iterator end = sTypes.end ();
|
||||
|
||||
while (cur != end)
|
||||
{
|
||||
if (this->peekString (*cur, it) == true)
|
||||
{
|
||||
return *cur;
|
||||
}
|
||||
|
||||
cur ++;
|
||||
}
|
||||
|
||||
this->m_error = true;
|
||||
this->m_errorInfo = "Expected type";
|
||||
return "";
|
||||
}
|
||||
|
||||
std::string BasicShaderLoader::extractName (std::string::const_iterator& it)
|
||||
{
|
||||
std::string::const_iterator cur = it;
|
||||
std::string::const_iterator begin = cur;
|
||||
|
||||
// first character has to be a valid alphabetic characer
|
||||
if (this->isChar (cur) == false && *cur != '_')
|
||||
{
|
||||
this->m_error = true;
|
||||
this->m_errorInfo = "Expected name doesn't start with a valid character";
|
||||
return "";
|
||||
}
|
||||
|
||||
cur ++;
|
||||
|
||||
while (cur != this->m_content.end () && (this->isChar (cur) == true || *cur == '_' || this->isNumeric (cur) == true)) cur ++;
|
||||
|
||||
it = cur;
|
||||
|
||||
return std::string (begin, cur);
|
||||
}
|
||||
|
||||
bool BasicShaderLoader::isChar (std::string::const_iterator& it)
|
||||
{
|
||||
return ((*it) >= 'A' && (*it) <= 'Z') || ((*it) >= 'a' && (*it) <= 'z');
|
||||
}
|
||||
|
||||
bool BasicShaderLoader::isNumeric (std::string::const_iterator& it)
|
||||
{
|
||||
return (*it) >= '0' && (*it) <= '9';
|
||||
}
|
||||
|
||||
std::string BasicShaderLoader::extractQuotedValue(std::string::const_iterator& it)
|
||||
{
|
||||
std::string::const_iterator cur = it;
|
||||
@ -69,7 +158,8 @@ std::string BasicShaderLoader::extractQuotedValue(std::string::const_iterator& i
|
||||
|
||||
std::string filename = std::string (++it, cur);
|
||||
|
||||
it = cur;
|
||||
it = ++cur;
|
||||
|
||||
return filename;
|
||||
}
|
||||
|
||||
@ -88,42 +178,63 @@ std::string BasicShaderLoader::lookupShaderFile (std::string filename)
|
||||
return "";
|
||||
}
|
||||
|
||||
// open the file, read content and close it
|
||||
irr::io::IReadFile* readFile = fs->createAndOpenFile (shaderTest);
|
||||
char* buffer = (char*) malloc (readFile->getSize () + 1);
|
||||
memset (buffer, 0, readFile->getSize() + 1);
|
||||
// now compile the new shader
|
||||
// do not include the default header (as it's already included in the parent)
|
||||
BasicShaderLoader loader (shaderTest, this->m_type, true);
|
||||
|
||||
readFile->read (buffer, readFile->getSize ());
|
||||
readFile->drop ();
|
||||
return *loader.precompile ();
|
||||
}
|
||||
|
||||
std::string output = buffer;
|
||||
std::string BasicShaderLoader::lookupReplaceSymbol (std::string symbol)
|
||||
{
|
||||
std::map<std::string, std::string>::const_iterator cur = sVariableReplacement.begin ();
|
||||
std::map<std::string, std::string>::const_iterator end = sVariableReplacement.end ();
|
||||
|
||||
free (buffer);
|
||||
while (cur != end)
|
||||
{
|
||||
if (cur->first == symbol)
|
||||
{
|
||||
return cur->second;
|
||||
}
|
||||
|
||||
return output;
|
||||
cur ++;
|
||||
}
|
||||
|
||||
// if there is no replacement, return the original
|
||||
return symbol;
|
||||
}
|
||||
|
||||
std::string* BasicShaderLoader::precompile ()
|
||||
{
|
||||
#define BREAK_IF_ERROR if (this->m_error == true) { device->getLogger ()->log ("ERROR COMPILING SHADER"); device->getLogger ()->log (this->m_errorInfo.c_str ()); return nullptr; }
|
||||
// parse the shader and find #includes and such things and translate them to the correct name
|
||||
// also remove any #version definition to prevent errors
|
||||
std::string::const_iterator it = this->m_content.begin ();
|
||||
|
||||
// reset error indicator
|
||||
this->m_error = false;
|
||||
this->m_errorInfo = "";
|
||||
|
||||
// search preprocessor macros and parse them
|
||||
while (it != this->m_content.end () && this->m_error == false)
|
||||
{
|
||||
// TODO: on precompilation steps search for attributes and replace them
|
||||
// TODO: with the correct opengl shader variable
|
||||
if (*it == '#')
|
||||
if (*it == ' ' || *it == '\t' || *it == '\n' || *it == '\r' || *it == '\0' || *it == '{' || *it == '}' || *it == '[' || *it == ']' || *it == '.')
|
||||
{
|
||||
if (this->peekString ("include", it) == true)
|
||||
this->m_compiledContent += *it;
|
||||
it ++;
|
||||
}
|
||||
else if (*it == '#')
|
||||
{
|
||||
if (this->peekString ("#include", it) == true)
|
||||
{
|
||||
std::string filename = "";
|
||||
|
||||
// ignore whitespaces
|
||||
this->ignoreSpaces(it);
|
||||
this->ignoreSpaces (it); BREAK_IF_ERROR
|
||||
// extract value between quotes
|
||||
filename = this->extractQuotedValue(it);
|
||||
filename = this->extractQuotedValue (it); BREAK_IF_ERROR
|
||||
|
||||
// try to find the file first
|
||||
this->m_compiledContent += "// begin of included from file " + filename + "\r\n";
|
||||
@ -133,15 +244,120 @@ std::string* BasicShaderLoader::precompile ()
|
||||
else
|
||||
{
|
||||
this->m_compiledContent += '#';
|
||||
it ++;
|
||||
}
|
||||
}
|
||||
else if (*it == 'a')
|
||||
{
|
||||
// find attribute definitions
|
||||
if (this->peekString ("attribute", it) == true)
|
||||
{
|
||||
this->ignoreSpaces (it);
|
||||
std::string type = this->extractType (it); BREAK_IF_ERROR
|
||||
this->ignoreSpaces (it);
|
||||
std::string name = this->extractName (it); BREAK_IF_ERROR
|
||||
this->ignoreSpaces (it);
|
||||
this->expectSemicolon (it); BREAK_IF_ERROR
|
||||
|
||||
this->m_compiledContent += "// attribute";
|
||||
this->m_compiledContent += " " + type + " ";
|
||||
this->m_compiledContent += name;
|
||||
this->m_compiledContent += "; /* replaced by " + this->lookupReplaceSymbol (name) + " */";
|
||||
}
|
||||
else
|
||||
{
|
||||
// check for types first
|
||||
std::string type = this->extractType (it);
|
||||
|
||||
// types not found, try names
|
||||
if (this->m_error == false)
|
||||
{
|
||||
this->m_compiledContent += type;
|
||||
}
|
||||
else
|
||||
{
|
||||
this->m_error = false;
|
||||
std::string name = this->extractName (it);
|
||||
|
||||
if (this->m_error == false)
|
||||
{
|
||||
// check if the name is a translated one or not
|
||||
this->m_compiledContent += this->lookupReplaceSymbol (name);
|
||||
}
|
||||
else
|
||||
{
|
||||
this->m_error = false;
|
||||
this->m_compiledContent += *it;
|
||||
it ++;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (*it == '/')
|
||||
{
|
||||
if (this->peekString ("//", it) == true)
|
||||
{
|
||||
std::string::const_iterator begin = it - 2;
|
||||
this->ignoreUpToNextLineFeed (it);
|
||||
this->m_compiledContent.append (begin, it);
|
||||
device->getLogger ()->log (*it + "asdf");
|
||||
}
|
||||
else if (this->peekString ("/*", it) == true)
|
||||
{
|
||||
std::string::const_iterator begin = it - 2;
|
||||
this->ignoreUpToBlockCommentEnd (it);
|
||||
this->m_compiledContent.append (begin, it);
|
||||
}
|
||||
else
|
||||
{
|
||||
this->m_compiledContent += *it;
|
||||
it ++;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
this->m_compiledContent += *it;
|
||||
}
|
||||
// check for types first
|
||||
std::string type = this->extractType (it);
|
||||
|
||||
it ++;
|
||||
// types not found, try names
|
||||
if (this->m_error == false)
|
||||
{
|
||||
this->m_compiledContent += type;
|
||||
}
|
||||
else
|
||||
{
|
||||
this->m_error = false;
|
||||
std::string name = this->extractName (it);
|
||||
|
||||
if (this->m_error == false)
|
||||
{
|
||||
// check if the name is a translated one or not
|
||||
this->m_compiledContent += this->lookupReplaceSymbol (name);
|
||||
}
|
||||
else
|
||||
{
|
||||
this->m_error = false;
|
||||
this->m_compiledContent += *it;
|
||||
it ++;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
device->getLogger ()->log ("Compiled shader output");
|
||||
device->getLogger ()->log (this->m_compiledContent.c_str ());
|
||||
|
||||
return &this->m_compiledContent;
|
||||
}
|
||||
#undef BREAK_IF_ERROR
|
||||
}
|
||||
|
||||
static std::map<std::string, std::string> BasicShaderLoader::sVariableReplacement =
|
||||
{
|
||||
{"a_Position", "gl_Vertex"},
|
||||
{"a_TexCoord", "gl_MultiTexCoord0"},
|
||||
};
|
||||
|
||||
static std::vector<std::string> BasicShaderLoader::sTypes =
|
||||
{
|
||||
"vec4", "vec3", "vec2", "float"
|
||||
};
|
@ -1,7 +1,10 @@
|
||||
#ifndef __BASIC_SHADER_LOADER_H__
|
||||
#define __BASIC_SHADER_LOADER_H__
|
||||
|
||||
#include <irrlicht/irrlicht.h>
|
||||
#include <iostream>
|
||||
#include <vector>
|
||||
#include <map>
|
||||
|
||||
/**
|
||||
* A basic shader loader that adds basic function definitions to every loaded shader
|
||||
@ -9,20 +12,44 @@
|
||||
class BasicShaderLoader
|
||||
{
|
||||
public:
|
||||
struct VariableReplacement
|
||||
{
|
||||
const char* original;
|
||||
const char* replacement;
|
||||
};
|
||||
|
||||
struct TypeName
|
||||
{
|
||||
const char* name;
|
||||
int size;
|
||||
};
|
||||
|
||||
enum Type
|
||||
{
|
||||
Type_Vertex = 0,
|
||||
Type_Pixel = 1,
|
||||
};
|
||||
|
||||
BasicShaderLoader (irr::io::path file, Type type);
|
||||
static std::map<std::string, std::string> sVariableReplacement;
|
||||
static std::vector<std::string> sTypes;
|
||||
|
||||
BasicShaderLoader (irr::io::path file, Type type, bool recursive = false);
|
||||
std::string* precompile ();
|
||||
|
||||
private:
|
||||
bool peekString (std::string str, std::string::const_iterator& it);
|
||||
bool expectSemicolon (std::string::const_iterator& it);
|
||||
void ignoreSpaces (std::string::const_iterator& it);
|
||||
void ignoreUpToNextLineFeed (std::string::const_iterator& it);
|
||||
void ignoreUpToBlockCommentEnd (std::string::const_iterator& it);
|
||||
std::string extractType (std::string::const_iterator& it);
|
||||
std::string extractName (std::string::const_iterator& it);
|
||||
std::string extractQuotedValue (std::string::const_iterator& it);
|
||||
std::string lookupShaderFile (std::string filename);
|
||||
std::string lookupReplaceSymbol (std::string symbol);
|
||||
|
||||
bool isChar (std::string::const_iterator& it);
|
||||
bool isNumeric (std::string::const_iterator& it);
|
||||
|
||||
std::string m_content;
|
||||
std::string m_compiledContent;
|
||||
|
@ -3,17 +3,16 @@ project(wallengine)
|
||||
|
||||
set(CMAKE_CXX_STANDARD 11)
|
||||
set(CMAKE_CXX_FLAGS "-fpermissive")
|
||||
set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/CMakeModules")
|
||||
|
||||
find_package(X11 REQUIRED)
|
||||
find_package(OpenGL REQUIRED)
|
||||
find_package(GLUT REQUIRED)
|
||||
find_package(ZLIB REQUIRED)
|
||||
find_package(Irrlicht REQUIRED)
|
||||
|
||||
add_library(irrlicht STATIC IMPORTED)
|
||||
set_property(TARGET irrlicht PROPERTY IMPORTED_LOCATION ../../lib/irrlicht/lib/Linux/libIrrlicht.a)
|
||||
|
||||
include_directories(${X11_INCLUDE_DIR} "../lib/irrlicht/include")
|
||||
include_directories(${X11_INCLUDE_DIR} ${IRRLICHT_INCLUDE_DIR})
|
||||
|
||||
add_executable(wallengine main.cpp common.h nier_test.cpp BasicShaderLoader.h BasicShaderLoader.cpp nier_test.h)
|
||||
|
||||
target_link_libraries(wallengine ${X11_LIBRARIES} ${X11_Xxf86vm_LIB} ${OPENGL_LIBRARIES} ${GLUT_LIBRARIES} ${ZLIB_LIBRARIES} irrlicht)
|
||||
target_link_libraries(wallengine ${X11_LIBRARIES} ${X11_Xxf86vm_LIB} ${OPENGL_LIBRARIES} ${GLUT_LIBRARIES} ${ZLIB_LIBRARIES} ${IRRLICHT_LIBRARY})
|
2
main.cpp
2
main.cpp
@ -1,5 +1,5 @@
|
||||
#include <iostream>
|
||||
#include <irrlicht.h>
|
||||
#include <irrlicht/irrlicht.h>
|
||||
#include <sstream>
|
||||
#include "nier_test.h"
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
#include <irrlicht.h>
|
||||
#include <irrlicht/irrlicht.h>
|
||||
#include <cstdint>
|
||||
#include <iostream>
|
||||
|
||||
|
@ -17,17 +17,17 @@ varying vec4 v_TexCoordRipple;
|
||||
|
||||
void main() {
|
||||
vec2 texCoord = v_TexCoord.xy;
|
||||
|
||||
|
||||
float mask = texSample2D(g_Texture2, v_TexCoord.zw).r;
|
||||
|
||||
|
||||
vec3 n1 = texSample2D(g_Texture1, v_TexCoordRipple.xy).xyz * 2 - 1;
|
||||
vec3 n2 = texSample2D(g_Texture1, v_TexCoordRipple.zw).xyz * 2 - 1;
|
||||
vec3 normal = normalize(vec3(n1.xy + n2.xy, n1.z));
|
||||
|
||||
|
||||
texCoord.xy += normal.xy * g_Strength * g_Strength * mask;
|
||||
|
||||
|
||||
gl_FragColor = texSample2D(g_Texture0, texCoord);
|
||||
|
||||
|
||||
#if SPECULAR == 1
|
||||
vec2 direction = vec2(0.5, 0.0) - v_TexCoord.xy;
|
||||
direction = normalize(direction);
|
||||
|
@ -10,33 +10,31 @@ uniform float g_Scale; // {"material":"ui_editor_properties_ripple_scale","defau
|
||||
uniform float g_ScrollSpeed; // {"material":"ui_editor_properties_scroll_speed","default":0,"range":[0,0.5]}
|
||||
uniform float g_Direction; // {"material":"ui_editor_properties_scroll_direction","default":0,"range":[0,6.28]}
|
||||
|
||||
// attribute vec3 a_Position; // replaced by gl_Vertex
|
||||
// attribute vec2 a_TexCoord; // replaced by gl_MultiTexCoord0
|
||||
attribute vec3 a_Position;
|
||||
attribute vec2 a_TexCoord;
|
||||
|
||||
varying vec4 v_TexCoord;
|
||||
varying vec4 v_TexCoordRipple;
|
||||
|
||||
void main() {
|
||||
// gl_Position = mul(vec4(a_Position, 1.0), g_ModelViewProjectionMatrix);
|
||||
gl_Position = g_ModelViewProjectionMatrix * gl_Vertex;
|
||||
v_TexCoord.xy = gl_MultiTexCoord0.xy;
|
||||
// v_TexCoord.xy = a_TexCoord;
|
||||
|
||||
gl_Position = mul(vec4(a_Position, 1.0), g_ModelViewProjectionMatrix);
|
||||
v_TexCoord.xy = a_TexCoord;
|
||||
|
||||
float piFrac = 0.78539816339744830961566084581988 * 0.5;
|
||||
float pi = 3.141;
|
||||
|
||||
|
||||
vec2 coordsRotated = v_TexCoord.xy;
|
||||
vec2 coordsRotated2 = v_TexCoord.xy * 1.333;
|
||||
|
||||
|
||||
vec2 scroll = rotateVec2(vec2(0, -1), g_Direction) * g_ScrollSpeed * g_ScrollSpeed * g_Time;
|
||||
|
||||
|
||||
v_TexCoordRipple.xy = coordsRotated + g_Time * g_AnimationSpeed * g_AnimationSpeed + scroll;
|
||||
v_TexCoordRipple.zw = coordsRotated2 - g_Time * g_AnimationSpeed * g_AnimationSpeed + scroll;
|
||||
v_TexCoordRipple *= g_Scale;
|
||||
|
||||
float rippleTextureAdjustment = (g_Texture0Resolution.x / g_Texture0Resolution.y);
|
||||
v_TexCoordRipple.xz *= rippleTextureAdjustment;
|
||||
|
||||
|
||||
v_TexCoord.zw = vec2(v_TexCoord.x * g_Texture2Resolution.z / g_Texture2Resolution.x,
|
||||
v_TexCoord.y * g_Texture2Resolution.w / g_Texture2Resolution.y);
|
||||
v_TexCoord.y * g_Texture2Resolution.w / g_Texture2Resolution.y);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user