Comments (13)
I can approve that this is not working as expected, I found the following reason:
vkGetAccelerationStructureMemoryRequirementsNV
takes VkMemoryRequirements2KHR
which is an alias for VkMemoryRequirements2
. VkMemoryRequirements2KHR
doesn't contain any members, so the JS->Type reflection here is not performed at all.
The following line in the 1.1.97
XML specification indicates, that:
<type category="struct" name="VkMemoryRequirements2KHR" alias="VkMemoryRequirements2"/>
Note the alias
attribute. This could be solved by interpreting VkMemoryRequirements2KHR
as VkMemoryRequirements2
in the parsing process and in the code-generation part as well. I'm not a 100% sure though if this is a general fix.
from nvk.
@maierfelix are you planning to implement it?
from nvk.
Yes I'm investigating, trying to fix this as soon as possible!:)
from nvk.
@maierfelix Hello, as I see you have done a lot of commits, was there fixed this bug?
from nvk.
I had to finish completing the online documentation and fixing some type inconsistency. I didn't cover this issue yet, but I have a fix ready in mind.
Edit: Do you have an repository of your RT project somewhere?
from nvk.
@maierfelix no sorry I don't have, as you know I can't build basic example with RT.
any news about it?
from nvk.
@Reon90 Latest master now contains the changes to fix this issue, please validate that it's working now.
I also added parameter type validation for vulkan function calls, they should now be more safe to use.
I guess that you use vkGetAccelerationStructureMemoryRequirementsNV
to gather the memoryRequirements - Please note that the specification currently states to use VkMemoryRequirements2KHR
for pMemoryRequirements
and not VkMemoryRequirements2
.
VkMemoryRequirements2KHR
is just a typedef for VkMemoryRequirements2
, so please use this one as described in the documentation here
Thanks and sorry for the delay!
from nvk.
@maierfelix thank you very much, I got correct results.
from nvk.
I will close this issue as soon as this is fully resolved (e.g. both VkMemoryRequirements2
and VkMemoryRequirements2KHR
are allowed as pMemoryRequirements
)
from nvk.
const descriptorIndexing = new VkPhysicalDeviceDescriptorIndexingFeaturesEXT();
const deviceFeatures = new VkPhysicalDeviceFeatures2();
deviceFeatures.pNext = descriptorIndexing;
vkGetPhysicalDeviceFeatures2(physicalDevice, deviceFeatures);
TypeError: 'VkPhysicalDeviceFeatures2.pNext' must be 'null'
It was broken few days ago.
from nvk.
I can approve that this isn't working, I'm investigating
from nvk.
Closing this as this is not an too important issue? If someone is actually in the need to get this implemented, I'm open to make the changes
from nvk.
from nvk.
Related Issues (20)
- Typescript is broken? HOT 6
- Wrong parameter type in index.d.ts HOT 8
- pNext: "Member isn't allowed to be filled!" incorrect behavior when 'null'
- Empty arrays cause a crash when a structure gets flushed
- Add documentation for ArrayBuffer.getAddress and ArrayBuffer.fromAddress
- Add Cursor/Pointer Lock support
- ArrayBuffer members of structures are not correctly handled
- No render devices available in vmware HOT 2
- oculus support HOT 1
- BigInt.prototype.dereference doesn't actually dereference
- Running new VkDescriptorBufferInfo() in an electron render process causes crash on getArrayBufferFromAddress() in VkBuffer initialisation. HOT 3
- [WebAssembly, ArrayBuffer] Low-level input for structs? HOT 4
- Drop Vk and VK_ prefixes? HOT 1
- Validation Layer name change to "VK_LAYER_KHRONOS_validation" HOT 4
- TypeScript types not working HOT 2
- Disabling rate limit / vsync using NVK
- Howto get humanized Vulkan driver version?
- Issue with BigUint64Array
- VkImageBlit and VkImageBlit2KHR srcOffsets and dstOffsets cause RangeError crash.
- Incorrect TypeScript signature for vkCmdBindVertexBuffers
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from nvk.