2022-01-11 16:05:43 索炜达电子 352
文件编号:L26
文件大小:122M
代码行数:360行(主程序)
开发环境:VS2019、OpenGL
猿创承诺:该源码均通过亲自测试可正常运行
简要概述:OpenGL-金钱-喷泉,glfw 实现的简单粒子效果
调整粒子扩散效果
#define TOTAL_PARTICLES // total particles that are allowed
#define SPREAD_MIN_ANGLE // minimum spreading angle correspond to X and Y axises
#define SPREAD_MAX_ANGLE // maximum spreading angle correspond to X and Y axises
#define MIN_ACCELERATION // minimum initial particle acceleration
#define MIN_ACCELERATION // maximum initial partcile acceleration
#define GRAVITY //gravity
#define MIN_ROTATE_DELTA //minimum particle rotation
#define MAX_ROTATE_DELTA //maximum parctile rotation
#define PARTICLE_SPAWN_INTERVAL //the time interval to spawn a new particle
运行效果:
目录│文件列表:
├ 演示视频
│ └ 演示视频.mp4
└ 项目源码
└ OpenGL-Money-Fountain
│ image.bmp
│ image1.bmp
│ OpenGl_MoneyFountain.sln
├ OpenGl_MoneyFountain
│ │ Camera.hpp
│ │ glad.c
│ │ Main.cpp
│ │ MoneyLoc.hpp
│ │ OpenGl_MoneyFountain.vcxproj
│ │ OpenGl_MoneyFountain.vcxproj.filters
│ │ OpenGl_MoneyFountain.vcxproj.user
│ │ ShaderProgram.hpp
│ │ stb_image.h
│ │ Texture.hpp
│ ├ data
│ │ │ 100dollar.jpg
│ │ └ shaders
│ │ │ fragment.vert
│ │ └ vertex.vert
│ ├ libs
│ │ ├ include
│ │ │ ├ glad
│ │ │ │ └ glad.h
│ │ │ ├ GLFW
│ │ │ │ │ glfw3.h
│ │ │ │ └ glfw3native.h
│ │ │ ├ glm
│ │ │ │ │ CMakeLists.txt
│ │ │ │ │ common.hpp
│ │ │ │ │ exponential.hpp
│ │ │ │ │ ext.hpp
│ │ │ │ │ fwd.hpp
│ │ │ │ │ geometric.hpp
│ │ │ │ │ glm.hpp
│ │ │ │ │ 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
│ │ │ │ ├ detail
│ │ │ │ │ │ compute_common.hpp
│ │ │ │ │ │ compute_vector_relational.hpp
│ │ │ │ │ │ func_common.inl
│ │ │ │ │ │ func_common_simd.inl
│ │ │ │ │ │ func_exponential.inl
│ │ │ │ │ │ func_exponential_simd.inl
│ │ │ │ │ │ func_geometric.inl
│ │ │ │ │ │ func_geometric_simd.inl
│ │ │ │ │ │ func_integer.inl
│ │ │ │ │ │ func_integer_simd.inl
│ │ │ │ │ │ func_matrix.inl
│ │ │ │ │ │ func_matrix_simd.inl
│ │ │ │ │ │ func_packing.inl
│ │ │ │ │ │ func_packing_simd.inl
│ │ │ │ │ │ func_trigonometric.inl
│ │ │ │ │ │ func_trigonometric_simd.inl
│ │ │ │ │ │ func_vector_relational.inl
│ │ │ │ │ │ func_vector_relational_simd.inl
│ │ │ │ │ │ glm.cpp
│ │ │ │ │ │ qualifier.hpp
│ │ │ │ │ │ setup.hpp
│ │ │ │ │ │ type_float.hpp
│ │ │ │ │ │ type_half.hpp
│ │ │ │ │ │ type_half.inl
│ │ │ │ │ │ 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_mat4x4_simd.inl
│ │ │ │ │ │ type_quat.hpp
│ │ │ │ │ │ type_quat.inl
│ │ │ │ │ │ type_quat_simd.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_vec4_simd.inl
│ │ │ │ │ │ _features.hpp
│ │ │ │ │ │ _fixes.hpp
│ │ │ │ │ │ _noise.hpp
│ │ │ │ │ │ _swizzle.hpp
│ │ │ │ │ │ _swizzle_func.hpp
│ │ │ │ │ └ _vectorize.hpp
│ │ │ │ ├ ext
│ │ │ │ │ │ matrix_clip_space.hpp
│ │ │ │ │ │ matrix_clip_space.inl
│ │ │ │ │ │ matrix_common.hpp
│ │ │ │ │ │ matrix_common.inl
│ │ │ │ │ │ matrix_double2x2.hpp
│ │ │ │ │ │ matrix_double2x2_precision.hpp
│ │ │ │ │ │ matrix_double2x3.hpp
│ │ │ │ │ │ matrix_double2x3_precision.hpp
│ │ │ │ │ │ matrix_double2x4.hpp
│ │ │ │ │ │ matrix_double2x4_precision.hpp
│ │ │ │ │ │ matrix_double3x2.hpp
│ │ │ │ │ │ matrix_double3x2_precision.hpp
│ │ │ │ │ │ matrix_double3x3.hpp
│ │ │ │ │ │ matrix_double3x3_precision.hpp