实例介绍
配置好的Modern OpenGL开发环境,适用于opengl3.3+及以上版本。 1.GLFW3+GLAD 2.集成stb_image和assimp 3.相对路径配置,任意装有vs的PC都可以一键打开
【实例截图】
【核心代码】
OpenGL
├── external
│ ├── dll
│ │ └── assimp-vc140-mt.dll
│ ├── include
│ │ ├── assimp
│ │ │ ├── ai_assert.h
│ │ │ ├── anim.h
│ │ │ ├── camera.h
│ │ │ ├── cexport.h
│ │ │ ├── cfileio.h
│ │ │ ├── cimport.h
│ │ │ ├── color4.h
│ │ │ ├── color4.inl
│ │ │ ├── Compiler
│ │ │ │ ├── poppack1.h
│ │ │ │ ├── pstdint.h
│ │ │ │ └── pushpack1.h
│ │ │ ├── config.h
│ │ │ ├── DefaultLogger.hpp
│ │ │ ├── defs.h
│ │ │ ├── Exporter.hpp
│ │ │ ├── importerdesc.h
│ │ │ ├── Importer.hpp
│ │ │ ├── IOStream.hpp
│ │ │ ├── IOSystem.hpp
│ │ │ ├── light.h
│ │ │ ├── Logger.hpp
│ │ │ ├── LogStream.hpp
│ │ │ ├── material.h
│ │ │ ├── material.inl
│ │ │ ├── matrix3x3.h
│ │ │ ├── matrix3x3.inl
│ │ │ ├── matrix4x4.h
│ │ │ ├── matrix4x4.inl
│ │ │ ├── mesh.h
│ │ │ ├── metadata.h
│ │ │ ├── NullLogger.hpp
│ │ │ ├── port
│ │ │ │ └── AndroidJNI
│ │ │ │ └── AndroidJNIIOSystem.h
│ │ │ ├── postprocess.h
│ │ │ ├── ProgressHandler.hpp
│ │ │ ├── quaternion.h
│ │ │ ├── quaternion.inl
│ │ │ ├── scene.h
│ │ │ ├── texture.h
│ │ │ ├── types.h
│ │ │ ├── vector2.h
│ │ │ ├── vector2.inl
│ │ │ ├── vector3.h
│ │ │ ├── vector3.inl
│ │ │ └── version.h
│ │ ├── glad
│ │ │ ├── glad.h
│ │ │ └── khrplatform.h
│ │ ├── glfw
│ │ │ ├── glfw3.h
│ │ │ └── glfw3native.h
│ │ ├── glm
│ │ │ ├── CMakeLists.txt
│ │ │ ├── common.hpp
│ │ │ ├── detail
│ │ │ │ ├── dummy.cpp
│ │ │ │ ├── _features.hpp
│ │ │ │ ├── _fixes.hpp
│ │ │ │ ├── func_common.hpp
│ │ │ │ ├── func_common.inl
│ │ │ │ ├── func_exponential.hpp
│ │ │ │ ├── func_exponential.inl
│ │ │ │ ├── func_geometric.hpp
│ │ │ │ ├── func_geometric.inl
│ │ │ │ ├── func_integer.hpp
│ │ │ │ ├── func_integer.inl
│ │ │ │ ├── func_matrix.hpp
│ │ │ │ ├── func_matrix.inl
│ │ │ │ ├── func_noise.hpp
│ │ │ │ ├── func_noise.inl
│ │ │ │ ├── func_packing.hpp
│ │ │ │ ├── func_packing.inl
│ │ │ │ ├── func_trigonometric.hpp
│ │ │ │ ├── func_trigonometric.inl
│ │ │ │ ├── func_vector_relational.hpp
│ │ │ │ ├── func_vector_relational.inl
│ │ │ │ ├── glm.cpp
│ │ │ │ ├── hint.hpp
│ │ │ │ ├── intrinsic_common.hpp
│ │ │ │ ├── intrinsic_common.inl
│ │ │ │ ├── intrinsic_exponential.hpp
│ │ │ │ ├── intrinsic_exponential.inl
│ │ │ │ ├── intrinsic_geometric.hpp
│ │ │ │ ├── intrinsic_geometric.inl
│ │ │ │ ├── intrinsic_integer.hpp
│ │ │ │ ├── intrinsic_integer.inl
│ │ │ │ ├── intrinsic_matrix.hpp
│ │ │ │ ├── intrinsic_matrix.inl
│ │ │ │ ├── intrinsic_trigonometric.hpp
│ │ │ │ ├── intrinsic_trigonometric.inl
│ │ │ │ ├── intrinsic_vector_relational.hpp
│ │ │ │ ├── intrinsic_vector_relational.inl
│ │ │ │ ├── _literals.hpp
│ │ │ │ ├── _noise.hpp
│ │ │ │ ├── precision.hpp
│ │ │ │ ├── precision.inl
│ │ │ │ ├── setup.hpp
│ │ │ │ ├── _swizzle_func.hpp
│ │ │ │ ├── _swizzle.hpp
│ │ │ │ ├── type_float.hpp
│ │ │ │ ├── type_gentype.hpp
│ │ │ │ ├── type_gentype.inl
│ │ │ │ ├── type_half.hpp
│ │ │ │ ├── type_half.inl
│ │ │ │ ├── type_int.hpp
│ │ │ │ ├── type_mat2x2.hpp
│ │ │ │ ├── type_mat2x2.inl
│ │ │ │ ├── type_mat2x3.hpp
│ │ │ │ ├── type_mat2x3.inl
│ │ │ │ ├── type_mat2x4.hpp
│ │ │ │ ├── type_mat2x4.inl
│ │ │ │ ├── type_mat3x2.hpp
│ │ │ │ ├── type_mat3x2.inl
│ │ │ │ ├── type_mat3x3.hpp
│ │ │ │ ├── type_mat3x3.inl
│ │ │ │ ├── type_mat3x4.hpp
│ │ │ │ ├── type_mat3x4.inl
│ │ │ │ ├── type_mat4x2.hpp
│ │ │ │ ├── type_mat4x2.inl
│ │ │ │ ├── type_mat4x3.hpp
│ │ │ │ ├── type_mat4x3.inl
│ │ │ │ ├── type_mat4x4.hpp
│ │ │ │ ├── type_mat4x4.inl
│ │ │ │ ├── type_mat.hpp
│ │ │ │ ├── type_mat.inl
│ │ │ │ ├── type_vec1.hpp
│ │ │ │ ├── type_vec1.inl
│ │ │ │ ├── type_vec2.hpp
│ │ │ │ ├── type_vec2.inl
│ │ │ │ ├── type_vec3.hpp
│ │ │ │ ├── type_vec3.inl
│ │ │ │ ├── type_vec4.hpp
│ │ │ │ ├── type_vec4.inl
│ │ │ │ ├── type_vec.hpp
│ │ │ │ ├── type_vec.inl
│ │ │ │ └── _vectorize.hpp
│ │ │ ├── exponential.hpp
│ │ │ ├── ext.hpp
│ │ │ ├── fwd.hpp
│ │ │ ├── geometric.hpp
│ │ │ ├── glm.hpp
│ │ │ ├── gtc
│ │ │ │ ├── constants.hpp
│ │ │ │ ├── constants.inl
│ │ │ │ ├── epsilon.hpp
│ │ │ │ ├── epsilon.inl
│ │ │ │ ├── matrix_access.hpp
│ │ │ │ ├── matrix_access.inl
│ │ │ │ ├── matrix_integer.hpp
│ │ │ │ ├── matrix_inverse.hpp
│ │ │ │ ├── matrix_inverse.inl
│ │ │ │ ├── matrix_transform.hpp
│ │ │ │ ├── matrix_transform.inl
│ │ │ │ ├── noise.hpp
│ │ │ │ ├── noise.inl
│ │ │ │ ├── packing.hpp
│ │ │ │ ├── packing.inl
│ │ │ │ ├── quaternion.hpp
│ │ │ │ ├── quaternion.inl
│ │ │ │ ├── random.hpp
│ │ │ │ ├── random.inl
│ │ │ │ ├── reciprocal.hpp
│ │ │ │ ├── reciprocal.inl
│ │ │ │ ├── type_precision.hpp
│ │ │ │ ├── type_precision.inl
│ │ │ │ ├── type_ptr.hpp
│ │ │ │ ├── type_ptr.inl
│ │ │ │ ├── ulp.hpp
│ │ │ │ └── ulp.inl
│ │ │ ├── gtx
│ │ │ │ ├── associated_min_max.hpp
│ │ │ │ ├── associated_min_max.inl
│ │ │ │ ├── bit.hpp
│ │ │ │ ├── bit.inl
│ │ │ │ ├── closest_point.hpp
│ │ │ │ ├── closest_point.inl
│ │ │ │ ├── color_space.hpp
│ │ │ │ ├── color_space.inl
│ │ │ │ ├── color_space_YCoCg.hpp
│ │ │ │ ├── color_space_YCoCg.inl
│ │ │ │ ├── compatibility.hpp
│ │ │ │ ├── compatibility.inl
│ │ │ │ ├── component_wise.hpp
│ │ │ │ ├── component_wise.inl
│ │ │ │ ├── constants.hpp
│ │ │ │ ├── dual_quaternion.hpp
│ │ │ │ ├── dual_quaternion.inl
│ │ │ │ ├── epsilon.hpp
│ │ │ │ ├── euler_angles.hpp
│ │ │ │ ├── euler_angles.inl
│ │ │ │ ├── extend.hpp
│ │ │ │ ├── extend.inl
│ │ │ │ ├── extented_min_max.hpp
│ │ │ │ ├── extented_min_max.inl
│ │ │ │ ├── fast_exponential.hpp
│ │ │ │ ├── fast_exponential.inl
│ │ │ │ ├── fast_square_root.hpp
│ │ │ │ ├── fast_square_root.inl
│ │ │ │ ├── fast_trigonometry.hpp
│ │ │ │ ├── fast_trigonometry.inl
│ │ │ │ ├── gradient_paint.hpp
│ │ │ │ ├── gradient_paint.inl
│ │ │ │ ├── handed_coordinate_space.hpp
│ │ │ │ ├── handed_coordinate_space.inl
│ │ │ │ ├── inertia.hpp
│ │ │ │ ├── inertia.inl
│ │ │ │ ├── int_10_10_10_2.hpp
│ │ │ │ ├── int_10_10_10_2.inl
│ │ │ │ ├── integer.hpp
│ │ │ │ ├── integer.inl
│ │ │ │ ├── intersect.hpp
│ │ │ │ ├── intersect.inl
│ │ │ │ ├── io.hpp
│ │ │ │ ├── io.inl
│ │ │ │ ├── log_base.hpp
│ │ │ │ ├── log_base.inl
│ │ │ │ ├── matrix_cross_product.hpp
│ │ │ │ ├── matrix_cross_product.inl
│ │ │ │ ├── matrix_interpolation.hpp
│ │ │ │ ├── matrix_interpolation.inl
│ │ │ │ ├── matrix_major_storage.hpp
│ │ │ │ ├── matrix_major_storage.inl
│ │ │ │ ├── matrix_operation.hpp
│ │ │ │ ├── matrix_operation.inl
│ │ │ │ ├── matrix_query.hpp
│ │ │ │ ├── matrix_query.inl
│ │ │ │ ├── matrix_transform_2d.hpp
│ │ │ │ ├── matrix_transform_2d.inl
│ │ │ │ ├── mixed_product.hpp
│ │ │ │ ├── mixed_product.inl
│ │ │ │ ├── multiple.hpp
│ │ │ │ ├── multiple.inl
│ │ │ │ ├── noise.hpp
│ │ │ │ ├── normal.hpp
│ │ │ │ ├── normal.inl
│ │ │ │ ├── normalize_dot.hpp
│ │ │ │ ├── normalize_dot.inl
│ │ │ │ ├── norm.hpp
│ │ │ │ ├── norm.inl
│ │ │ │ ├── number_precision.hpp
│ │ │ │ ├── number_precision.inl
│ │ │ │ ├── optimum_pow.hpp
│ │ │ │ ├── optimum_pow.inl
│ │ │ │ ├── orthonormalize.hpp
│ │ │ │ ├── orthonormalize.inl
│ │ │ │ ├── perpendicular.hpp
│ │ │ │ ├── perpendicular.inl
│ │ │ │ ├── polar_coordinates.hpp
│ │ │ │ ├── polar_coordinates.inl
│ │ │ │ ├── projection.hpp
│ │ │ │ ├── projection.inl
│ │ │ │ ├── quaternion.hpp
│ │ │ │ ├── quaternion.inl
│ │ │ │ ├── random.hpp
│ │ │ │ ├── raw_data.hpp
│ │ │ │ ├── raw_data.inl
│ │ │ │ ├── reciprocal.hpp
│ │ │ │ ├── rotate_normalized_axis.hpp
│ │ │ │ ├── rotate_normalized_axis.inl
│ │ │ │ ├── rotate_vector.hpp
│ │ │ │ ├── rotate_vector.inl
│ │ │ │ ├── scalar_relational.hpp
│ │ │ │ ├── scalar_relational.inl
│ │ │ │ ├── simd_mat4.hpp
│ │ │ │ ├── simd_mat4.inl
│ │ │ │ ├── simd_quat.hpp
│ │ │ │ ├── simd_quat.inl
│ │ │ │ ├── simd_vec4.hpp
│ │ │ │ ├── simd_vec4.inl
│ │ │ │ ├── spline.hpp
│ │ │ │ ├── spline.inl
│ │ │ │ ├── std_based_type.hpp
│ │ │ │ ├── std_based_type.inl
│ │ │ │ ├── string_cast.hpp
│ │ │ │ ├── string_cast.inl
│ │ │ │ ├── transform2.hpp
│ │ │ │ ├── transform2.inl
│ │ │ │ ├── transform.hpp
│ │ │ │ ├── transform.inl
│ │ │ │ ├── ulp.hpp
│ │ │ │ ├── unsigned_int.hpp
│ │ │ │ ├── unsigned_int.inl
│ │ │ │ ├── vec1.hpp
│ │ │ │ ├── vec1.inl
│ │ │ │ ├── vector_angle.hpp
│ │ │ │ ├── vector_angle.inl
│ │ │ │ ├── vector_query.hpp
│ │ │ │ ├── vector_query.inl
│ │ │ │ ├── wrap.hpp
│ │ │ │ └── wrap.inl
│ │ │ ├── integer.hpp
│ │ │ ├── mat2x2.hpp
│ │ │ ├── mat2x3.hpp
│ │ │ ├── mat2x4.hpp
│ │ │ ├── mat3x2.hpp
│ │ │ ├── mat3x3.hpp
│ │ │ ├── mat3x4.hpp
│ │ │ ├── mat4x2.hpp
│ │ │ ├── mat4x3.hpp
│ │ │ ├── mat4x4.hpp
│ │ │ ├── matrix.hpp
│ │ │ ├── packing.hpp
│ │ │ ├── trigonometric.hpp
│ │ │ ├── vec2.hpp
│ │ │ ├── vec3.hpp
│ │ │ ├── vec4.hpp
│ │ │ └── vector_relational.hpp
│ │ └── image
│ │ └── stb_image.h
│ └── lib
│ ├── assimp.lib
│ ├── glad.lib
│ ├── glfw3.lib
│ └── stb_image.lib
├── resources
│ ├── image
│ │ ├── wall.jpg
│ │ └── wood.png
│ └── model
│ └── teapot.obj
└── vsbuild
├── Debug
│ ├── vsbuild.exe
│ ├── vsbuild.ilk
│ └── vsbuild.pdb
├── vsbuild
│ ├── Debug
│ │ ├── Source.obj
│ │ ├── vc140.idb
│ │ ├── vc140.pdb
│ │ ├── vsbuild.log
│ │ └── vsbuild.tlog
│ │ ├── CL.command.1.tlog
│ │ ├── CL.read.1.tlog
│ │ ├── CL.write.1.tlog
│ │ ├── link.command.1.tlog
│ │ ├── link.read.1.tlog
│ │ ├── link.write.1.tlog
│ │ └── vsbuild.lastbuildstate
│ ├── Source.cpp
│ ├── vsbuild.vcxproj
│ ├── vsbuild.vcxproj.filters
│ └── vsbuild.vcxproj.user
├── vsbuild.sln
└── vsbuild.VC.db
23 directories, 329 files
标签:
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明
网友评论
我要评论