chuigda / vulkan4j

Vulkan bindings for Java using Project-Panama (java.lang.foreign) APIs
BSD 3-Clause "New" or "Revised" License
8 stars 0 forks source link

Two-staged strategy #5

Closed CousinZe closed 3 days ago

CousinZe commented 5 days ago

考虑给封装分两层,一层只做 Constants + Memory layout + Function descriptor + Method handle,另一层基于这一层再做封装,引入 Ptr/Array/Create 之类的概念。这样如果其他人想基于我们的代码生成器的产物再做别的封装可以绕过中间这一层。

chuigda commented 3 days ago

实际上我们也把 Descriptor, Handle 和 Layout 暴露出来了,所以其实我们也是 two staged。反而是隔壁 LWJGL 一毛不拔,一点不漏

ice1000 commented 2 days ago

太强了!