Commit graph

456 commits

Author SHA1 Message Date
d6c3bc1131 Update ebcl 2018-03-31 23:19:37 +02:00
3e7174d0c2 UI - Clear mouse delegate if script is reloaded
Not the perfect solution but hey, it prevents a crash.
2018-03-30 21:30:51 +02:00
956836390a Filewatcher - Disabled intrusive traces :s 2018-03-30 21:21:14 +02:00
b12931c84d Filewatcher - Fixed bug caused by triggers modifying watcher state
Some of the filewatcher's state was being fetched before the trigger was
called and then used after that call. When the trigger modified the
filewatcher's state, it would on occasion explode.
2018-03-30 19:16:04 +02:00
a266120761 Profiler - "Expected order" workaround
So the profiler apparently expects starts and ends to be consistent in
ordering. Whenever the order changes, it will likely crash. Modified the
main loop so it doesn't add the debug output's timings if the profiler
has been reset due to reloading as a workaround. This needs to be fixed,
though.
2018-03-30 17:34:22 +02:00
68d01ca42e Shaders - Relative paths
Shaders are no longer found under /shaders in the project; they can be
anywhere. In addition, paths for both (program) instructions in the
script and include directives in shader source code are relative to the
file which contains them.
2017-12-29 11:33:15 +01:00
3344f96af0 "Interactive mode" for common code
This prevents the script manager and sync manager from watching/loading
their files unless they're explicitely started using
Common::SetInteractiveMode()

This will avoid having the whole thing loaded twice when running the
builder.
2017-12-28 17:16:39 +01:00
e8b3188be9 Scripts - Also watch included files 2017-12-28 13:02:48 +01:00
915d797a77 File watcher - Use T_FSPath 2017-12-28 12:42:58 +01:00
1e1c2108ee TODO list updated 2017-12-28 10:34:31 +01:00
9cb0b773c5 Scripting - Test updated to use includes 2017-12-28 10:33:59 +01:00
8ef9f85dc9 Scripting - Vim syntax updated 2017-12-28 10:33:41 +01:00
542e791199 Scripting - Includes work! 2017-12-28 10:27:23 +01:00
68f6c49066 More migration to T_FSPath 2017-12-27 14:53:19 +01:00
3f6c61cfd3 Propagate project path as a T_FSPath 2017-12-27 14:15:49 +01:00
1e55dbb4d9 Moved prototype FS stuff to ebcl 2017-12-27 11:32:49 +01:00
852573432f Filesystem abstraction prototype - Windows version of Cwd() 2017-12-27 10:22:40 +01:00
2d3f98aba1 Filesystem abstraction prototype - Path fixes 2017-12-27 10:12:13 +01:00
124b95db69 Filesystem abstraction prototype - Make paths relative 2017-12-27 09:37:36 +01:00
2e8d460f1f Filesystem abstraction prototype - Filesystem::Cwd() 2017-12-26 13:32:53 +01:00
f5b4113806 Filesystem abstraction prototype - Paths "finished"
Untested and I might have forgotten some useful shit, but ah well.
2017-12-26 13:18:01 +01:00
81a8390606 Filesystem abstraction prototype - Partial path implementation
Initialisation, assignment, comparison, conversion to string, hashing
2017-12-26 12:00:41 +01:00
0ae69daf05 Filesystem abstraction prototype - path declaration 2017-12-25 23:30:02 +01:00
3e838627dc Parser - Preliminary work in (include)
The parser accepts (include "some file") at top level. It does nothing
so far, however, and having it do anything will require some new code
for file name / path handling.
2017-12-25 22:40:55 +01:00
19ae316ad0 TODO list update 2017-12-25 21:53:09 +01:00
3ffc8bf240 Imgui updated 2017-12-25 20:44:32 +01:00
6b3f9bff2a Scripting - Handle compute shader groups automatically 2017-12-25 20:39:56 +01:00
c3ccc9403a Test - Converted DoF to compute shaders
It doesn't work too well, however. Other algorithms need to be checked
out.
2017-12-25 18:41:16 +01:00
eb2e83a568 Test - Compute shaders for raymarching 2017-12-25 10:12:17 +01:00
9b13b8e1c6 Profiler - Fixed checkboxes 2017-12-24 18:54:05 +01:00
786d1cf2fe ImGui updated
This was an attempt at fixing the problem with the profiler's
checkboxes, which sometimes reset immediately after a click. The attempt
failed, profiler's checkboxes are still fucked.
2017-12-24 18:47:52 +01:00
020ba4a289 Profiler - Some code clean-up 2017-12-24 18:40:34 +01:00
98ecedfaae Profiler - Display CPU/GPU times on tooltips 2017-12-24 18:40:12 +01:00
646ec5a423 Profiler - Also use GL timestamps
* Get performance information from the GPU using GL timers
* Avoid using glFinish() for the profiler
* Display max( cpu time , gpu time ) in the profiler window
2017-12-24 16:02:17 +01:00
99bd2c429b Adjustments to test compute shader 2017-12-24 13:16:07 +01:00
81ff8a8da6 Test - Use compute shader for combine stage 2017-12-24 11:40:06 +01:00
4394d911c2 Script - Fixed (image) command 2017-12-24 11:39:41 +01:00
7db090fb5d Scripting - Image unit binding 2017-12-24 11:10:38 +01:00
8839127c1a Scripting - Support for compute shader dispatch 2017-12-23 18:40:36 +01:00
4e77e6cf16 TODO list update 2017-12-23 17:54:48 +01:00
0abab985c1 TODO list updated 2017-12-23 17:30:30 +01:00
965496b231 Optimizer - Fixed input handling 2017-12-23 17:29:52 +01:00
d3b1883693 Optimizer - Finished function inlining 2017-12-23 17:18:29 +01:00
2c636fb7b5 Optimizer - Count required extra locals for function inlining 2017-12-17 19:02:00 +01:00
1a6509814e Optimizer - Determine order for call inlining 2017-12-17 17:27:23 +01:00
94b01e62b4 Optimizer - Started work on function inlining
For now:
* Option that triggers inlining
* Compute list of inline-able functions
2017-12-17 15:59:29 +01:00
fd84c3cae3 Compiler - Changed log level for full output dumps 2017-12-17 10:31:59 +01:00
01d9586264 Optimizer - Remove unused globals 2017-12-17 10:30:00 +01:00
630dd94ba6 Optimizer - Remove unused local variables 2017-12-17 09:55:53 +01:00
ff50ba561a Optimizer - Dead store elimination
Works for variables and assets. Does not cover call arguments yet.
2017-12-17 09:33:45 +01:00