【L26】计算机图形学:OpenGL粒子效果 金钱喷泉

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

运行效果:

【L26】计算机图形学:OpenGL粒子效果 金钱喷泉

目录│文件列表:

 ├ 演示视频

 │  └ 演示视频.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

TAG金钱-喷泉
  • 6 次
  • 600 分