Building a VR IFC viewer in C++ without external dependencies.
I just implemented a parser for IFC, and am now looking into extracting BRep and CSG geometry from it, convert that to meshes, and write a simple renderer for Vulkan.
My approach is to write really scrappy, simple code with minimal abstractions.
The hypothesis now is that for generating meshes from BRep, you don't need an entire CAD kernel, as a CAD kernel seems to be focused also on operations, but this will probably lead to a humbling experience and walking back to using either OpenCascade or licensing a commercial kernel like Parasolid.
My goal is to have a simple prototype out before the end of the year, but work might get in the way :)
I just implemented a parser for IFC, and am now looking into extracting BRep and CSG geometry from it, convert that to meshes, and write a simple renderer for Vulkan.
My approach is to write really scrappy, simple code with minimal abstractions.
The hypothesis now is that for generating meshes from BRep, you don't need an entire CAD kernel, as a CAD kernel seems to be focused also on operations, but this will probably lead to a humbling experience and walking back to using either OpenCascade or licensing a commercial kernel like Parasolid.
My goal is to have a simple prototype out before the end of the year, but work might get in the way :)
(here's some experiments I did with Metal and Vulkan: https://github.com/arjonagelhout/graphics-experiment, the IFC parser is currently not open source yet)