Dexa 1.0 Development Livestream: Task Lists, Samples, and Debugging
0:00-0:01: Stream is tested for audio and video quality; minor adjustments are made to the setup.
0:02: The focus is Dexa development, specifically Task Lists. A live share is initiated to collaborate on the task graph sample.
0:03: Discussion on starting a live share and working on the task graph sample, considering its executability.
0:05: Discussion on renaming task lists.
0:06: They are creating a Tasklist presenter information.
00:07: Discussion about the stream view count being delayed.
00:07: Discussing "adding tasks" to the list, retrieving it as a return value or what. The task list records desired actions. "Add task list" adds tasks to the current recording.
0:09: If something needs to happen only once it goes into it's own task list, or it is done manually. The task list basically captures the whole control flow of the whole renderer.
0:10: API is currently super simple, and intentionally barebones, until the right functions are implemented.
0:11: Temporary task is manually uploading images, creating staging buffers, mapping, memory, writing memory and then further destruction and manual copy command.
0:11: Linear staging allocator buffer will be available after 1.0.
0:12: They discuss the design and not having reordering (for now).
0:13: A vector of variance is needed, so Ids are created for the vector.
0:14: All contents inside of a task should be like your renderer functions. Renderer stays completely agnostic and doesn't even know task lists exist.
0:15: Makes it more clear when you reuse things.
0:17: We create staging buffer and upload, we map the memory, upload it, and then copy it over to our actual permanent buffer.
0:17: Render task is created that draws the buffer.
0:18: Streamer notices the stream is delayed by 30 seconds.
0:18: Thoughts on back end implementation, and saving tasks.
0:20: Carbon already has 11k Stars.
0:20: Working on add task or just cue it.
0:21: Move tasks instead of copying them in. Execution is way more important than recording.
0:22: We have Task Buffer Image Image, etc. Full task render has render begin pass info. "Task images" are faked images for the recording.
0:23: Creating info for the handle and callbacks are used.
0:23: A proper "add present" function is needed that takes in a task.
0:23: Taking a look at the hello triangle sample.
0:24: Using fake handles is a generic thing, so there is no type safety. Instead of tasks, image, etc. We only have task resources. Benefits would be that the implementation is simpler.
0:25: Thoughts on submissions themselves, and what comes next.
0:27: Executing = submitting task.
0:28: Present takes a swap chain, do we use the swap chain itself?
0:29: Discuss device, and if task interface should have a reference to it
0:31: Creating swap chain resource for the task list. Swap chains are created per task list.
0:32: Add present does not need any info then
0:34: Hoping to have Dexa 1.0 finished this weekend
0:36: Thoughts on optional parameters, like swap chain
0:38: Discuss code, and Zebra first initializations problems
0:39: Bail String
0:41: Discussion and thoughts on pointer void has kind of
0:43: Don't assert because task list doesn't necessarily present
0:44: Confidence is not high on how fast the back end can be figured out. Execute should be extremely simple, the only complicated thing will be inserting synchronization
0:46: Tasklist are basically synthetic sugar around submitting and presenting commands
0:47: Discuss the use of dynamic dispatch for analyzing the graph and what's good to use.
0:49: Base class, variant discussion
0:50: Is it STd Visit? A callback and arcs discussion
0:50: Do we have any device information because the device is what does the presenting. Impul device
0:52: Meta programming, type name, etc.
0:54: Code is written, to submit and is it needed to synchronize.
0:57: Should swap chains be apart of the task resources, querying the swap chain from the task interface, or its just reference.
0:58: Discord stream troubleshotting with latency issues.
1:00: Copying stuff and the safety of doing that.
1:01: Thoughts on optional objects and what do we do about them
1:02: Is it an optional "yes"?
1:03: The task list is only a couple of you right now, but that's fine.
1:03: Vertix buffer discussion, and getting lost in the code
1:04: Fixing the stream delay.
1:05: Removing it from the create info so it's no longer there now
1:06: Build request
1:07: "no program executed" - Swap Chain binding
1:08: Discuss what makes sense and how this will play out, construction vs code.
1:09: Thoughts on Lambda captures
1:10: Working on the new code, syntax, and hot reloading
1:11: Finding new codes and capturing by code
1:12: Lambda being mutable is used
1:13: Discussions on the new codes and type safety
1:14: What Patric is trying to do being suspicious
1:14: Swap chains not included
1:15: Code and testing
1:16: Discussion on test results and what works and does not work
1:17: Patches not set
1:18: Chat about the upcoming videos this weekend with respect to the Dexa
1:19: Review other "sample" programs from Dexa: Context and device sample, command list sample, sync sample, swap chain sample, and task list sample.
1:20: Thoughts on the mandelbrot code and function
1:21: Thoughts on debugging and the creation of sample program
1:21: There are some issues with setting things up
1:22: thoughts from the coder to the streamer for what's happening, and his view.
1:22: Discussion of resizing it and the new code that's being created.
1:22: Testing various things and coming across weird errors
1:25: The current tests are to ensure all the tests are working.
1:25: Resizing and going to zero size in the task list
1:25: If not minimized code is made
1:25: thoughts from other coders on the stream.
1:26: thoughts on how it looks and the quality of the video, from some on the stream
1:26: new coding of the samples with what it takes.
1:27: Shows off existing features
1:29: Two computers
1:30: Ups problems and code stuff
1:31: Discussion and thoughts on rendering effects.
1:31: Changing and editing
1:32: thoughts on vsync in Vulkan.
1:33: Hot reloading is showing.
1:33: Show off his new features
1:33: Discovered a bug
1:34: Pipeline and memory testing
1:36: How this work and test
1:37: Discuss with another coder about this code and if it will resolve the error
1:38: Test on the current set
1:39: 2000+ with something that had
1:40: Looked at why there's max resources, and the codes that are created
1:41: Discuss is the fix will work now with testing it
1:41: Viewers being reminded
1:41: Review of the Mandelbrot code and zoom
1:42: Plans on taking a break after
1:43: Imma run let chat
1:43: Working to be better with the task at hand
1:44: The guys in the chat are funny
1:45: Testing the setup
1:46: Increasing the setup and what you see
1:47: Thoughts on why this is so
1:48: Discuss float points and setting of how the coder feels
1:49: Image test
1:50: Stream wrapping up thoughts
1:51: Thoughts on bugs and what still needs to be worked out.
1:51: Test done from the last week, to the problems and solutions.
1:51: Just makes no sense
1:51: A review of new codes.
1:52: Code, thoughts, and fixes about this and the updates
1:53: Display another code, and why this and how
1:54: Discussion of things
1:55: The reasons why they use the code set
1:56: This would say
1:57: In this chat and code
1:58: The buffer storage size and saving a lot to the
1:59: Hot reloads and if it is worth it.
1:59: This stream coming to an end, and thank you.