!FZyQrssSlHEZqrYcOb:matrix.org

In WebGPU we Rust

284 Members
need to solve the cow-gonomics!39 Servers

Load older messages


SenderMessageTime
11 Aug 2020
@cwfitzgerald:matrix.orgcwfitzgeraldI don't think all the types are being replaced though04:58:59
@cwfitzgerald:matrix.orgcwfitzgeraldThings like the features bitflags and other things of that nature are still common between them04:59:25
@kvark:matrix.orgkvarkhmm, right. A handful of types will persist05:03:15
@kimundi:matrix.orgkimundiSo should I avoid redefining types that do not use Cow? :)06:13:06
@kimundi:matrix.orgkimundiActually, how should I handle Descriptors with Default impls and/or builder impls07:29:02
@kvark:matrix.orgkvark kimundi: let's redefine all descriptors, to be consistent 12:00:49
@kvark:matrix.orgkvarkbuilder impls will go away, default impls... not that important after your cowhidation work12:01:12
@kimundi:matrix.orgkimundiALright, I'll try to do that12:02:42
@kimundi:matrix.orgkimundi kvark: So should I basically copy everything that is currently re-exported from wgpu_types? 12:47:30
@kvark:matrix.orgkvarknot everything, just the descriptors12:48:10
@kimundi:matrix.orgkimundi kvark: Alright, I think I've now replaced every type that contained a Cow, and the example don't use Cow or Borrowed anywhere anymore 13:29:05
@kimundi:matrix.orgkimundiI might have missed some re-export from core though13:29:18
@kimundi:matrix.orgkimundiAnd the ShaderModule enum still contains a Cow, but I think thats intentional13:29:31
@kimundi:matrix.orgkimundiNotable, I did not need to replace all Descriptors for this13:30:00
@kvark:matrix.orgkvarkthank you!13:42:01
@kvark:matrix.orgkvark On an unrelated note, I was thinking: is there a single implementation of the VUs (valid usage rules) in Vulkan spec? Given how often the validation layers miss stuff, it seems mind-blowing that applications have to follow the spec, which isn't implemented really by either the drivers (they don't care about checking VUs, they just assume they are fulfilled) or the layers. 13:43:32
@kangz:matrix.orgKangzThe VVL (Vulkan Validation Layers) are supposed to implement the VUs and they only recently gained alpha support for pipeline barrier stuff.16:15:55
@kangz:matrix.orgKangzBut given the number of issues WebGPU finds in Vulkan, I'm sure there's a lot of fixes to the spec that will be needed.16:16:20
@m4b:matrix.orgm4bits almost as if specs written by humans have formal ambiguities ; )23:08:20
@m4b:matrix.orgm4bthankfully we all learned our lessons from the iso C and C++ "specs", and got better at using formal languages for these kind of things23:09:01
* @m4b:matrix.orgm4b stares wistfully at The Definition of Standard ML23:10:30
@m4b:matrix.orgm4byou don't have to respond to my trolling kvark :P23:13:20
@kvark:matrix.orgkvarkI'm not complaining about ambiguity. I'm complaining about the lack of spec implementation. IMO a spec that's not implemented is not a real spec23:13:34
@m4b:matrix.orgm4bwouldn't, e.g., an intel vulkan driver by an implementation of the vulkan spec? or do you mean something else?23:14:46
@kvark:matrix.orgkvarkIt doesn't implement VUs23:15:21
@m4b:matrix.orgm4bor you want some kind of assurances that the implementation meets the specification? (a generally very difficult problem in formal methodologies)23:15:22
@kvark:matrix.orgkvarkVVL are supposed to implement VUs but they are still(!) WIP23:16:02
12 Aug 2020
@kvark:matrix.orgkvark cwfitzgerald: I'm not going to merge https://github.com/gfx-rs/wgpu-rs/pull/501 until you finish your mindful review :) 03:24:42
@hecrj:matrix.orghecrj

Lachlan Sneff: What do you mean by "conflict with bevy"?

Also interested to know why do you think an ECS approach is more fitting for GUI. My experience is that dealing with hierarchical, mutable data structures in an ECS is quite painful. For instance, in order to change the text of the button example in Bevy, you need to give up some type safety: https://github.com/bevyengine/bevy/blob/d488d4e308dd1304347d22ad8728d08eb6abf568/examples/ui/button.rs#L41

12:33:05
@hecrj:matrix.orghecrj *

Lachlan Sneff: What do you mean by "conflict with bevy"?

Also interested to know why do you think an ECS approach is more fitting for GUI. My experience is that dealing with hierarchical, mutable data structures in an ECS is quite painful. For instance, in order to change the text of the button example in Bevy, you need to give up some type safety: https://github.com/bevyengine/bevy/blob/d488d4e308dd1304347d22ad8728d08eb6abf568/examples/ui/button.rs#L41

12:33:38

There are no newer messages yet.


Back to Room List