You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
2 years ago | |
---|---|---|
.idea | 2 years ago | |
common | 2 years ago | |
data | 2 years ago | |
sdf_generate | 2 years ago | |
.gitignore | 2 years ago | |
CMakeLists.txt | 2 years ago | |
LICENSE | 2 years ago | |
README.md | 2 years ago | |
defines.h | 2 years ago | |
functions.cu | 2 years ago | |
functions.cuh | 2 years ago | |
marchingCubes.cpp | 2 years ago | |
marchingCubes_kernel.cu | 2 years ago | |
run.py | 2 years ago | |
tables.h | 2 years ago | |
test_make_sphere_sdf.py | 2 years ago | |
toRaw.py | 2 years ago |
README.md
ISDF
Intelligent Sigend Distance Fields
Introduction
隐式曲面的渲染,基于Marching Cubes算法。
使用cuda实现的Marching Cubes算法,参考NVIDIA官方Sample。
提供了运行的脚本(run.py),可使用python3 run.py --help
获取提示。
Dependencies
- cmake >= 3.16
- cuda >= 10.1
- openGL >= 3.x
- python3
- numpy
Usage
支持以下两种形式的渲染:
- SDF文件(序列化后的三维数组)
#根据sdf文件的size,会自动padding成2的幂次。比如100*200*150会padding成256*256*256
#python3 run.py -f ${SDF_FILE}
python3 run.py -f ./data/mesh_test_step_4.sdf
- 隐式函数(表达式)
#python3 run.py -d ${demoId} -s ${renderSize} 注意${renderSize}必须为2的幂次
python3 run.py -d 1 #运行demo1,默认分辨率为128*128*128
python3 run.py -d 2 -s 256 #运行demo2,分辨率为256*256*256
一些隐式表达式的demo在functions.cu和functions.cuh中。 如果需要添加,在functions中声明&实现,然后需要修改第63行的eval函数。