自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(26)
  • 资源 (2)
  • 收藏
  • 关注

原创 Auto.js调用Java接口

【代码】Auto.js调用Java接口。

2024-02-27 10:21:24 502

原创 Unity 脚本中创建的游戏对象

创建一个新的游戏对象时,它会自动被添加到当前场景中。这是因为在 Unity 中,场景实际上是一个层级结构,包含了所有的游戏对象。当创建一个新的游戏对象,它会自动被添加到当前场景的层级结构中,以便在场景中正确显示和操作。请注意,虽然它会从层级结构中移除,但游戏对象仍然存在于场景中。的父对象变为场景的根级别,从而将其从层级结构中移除。要将一个游戏对象从场景的层级结构中移除,可以使用。方法来将其销毁,或者将其从层级结构中移除。如果想从场景中移除一个游戏对象,可以使用。这将彻底从场景中移除并销毁游戏对象。

2023-10-18 09:12:12 291

原创 C++:char和char16_t相互转换

C++:char和char16_t相互转换

2023-10-11 12:49:49 387

原创 C++ 常量对象及常量成员函数

在C++中,常量成员函数被设计成可以在常量对象上调用,也可以在非常量对象上调用。然而,如果代码可能会涉及到常量对象,那么保留两个版本会提供更大的灵活性,并且符合良好的编程实践,因为它允许你在不同的情况下以一致的方式使用索引器。所以,常量成员函数可以提供一种在对象的不同状态下执行相同操作的方法,而不必担心意外修改对象的状态。是C++中的两个不同的函数签名,它们的区别在于是否允许在调用该函数时修改对象的成员。是为了提供对常量对象的支持,它可以在常量对象上被调用,但只能读取成员,不能修改它们。

2023-10-08 14:49:48 133

原创 使用 rollup.watch

rollup.watch 的使用教程

2022-02-01 23:37:37 2487

原创 Blender

物理模拟

2021-06-23 16:30:45 242

原创 CMake:add_executable

add_executable(targetName source1 [source2 ...])这将创建一个可执行文件,它可以在CMake项目中被称为 targetName 。该名称可能包含字母、数字、下划线和连字符。构建项目时,将在构建目录中创建一个具有平台相关名称的可执行文件,默认名称基于目标名称。思考以下简单的命令示例:add_executable(myApp main.cpp)默认情况下,可执行文件的名称在Windows上是myApp.exe,在基于Unix的平台上是myApp,如macO

2021-06-10 16:58:52 4540 3

原创 Strat Win32 Programming

Windows头文件中定义的四种数据结构体结构体含义MSGMessage structureWNDCLASSWindow class structurePAINTSTRUCTPaint structureRECTRectangle structure三个不同类型的 “ 句柄 ” ,使用大写标识符标识符含义HINSTANCE程序本身的“实例”句柄HWND窗口的句柄HDC设备上下文的句柄常用的变量名前缀

2021-05-22 16:01:52 113

原创 Android OpenGLES 开发错误总结

函数final float[] verticesData = { // position // color 0.5f, 0.5f, 0.0f, 1.0f, 0.0f, 0.0f, -0.5f, 0.5f, 0.0f, 0.0f, 1.0f, 0.0f, -0.5f, -0.5f, 0.0f, 0.0f, 0.0f, 1.0f, 0.5f, -0.5f, 0.0f, 0.0f, 1.0f, 1.0f};final int[] indicesData = { 0, 1

2021-05-15 10:05:43 249

原创 透视投影矩阵推导

透视投影矩阵(Perspective Matrix)近截面与远截面之间构成的四棱台称为视锥体,而透视投影矩阵的任务就是把位于视锥体内的物体的顶点 x,y,zx,y,zx,y,z 坐标映射到 [−1,1][-1,1][−1,1] 范围。这相当于把这个四棱台扭曲变形成一个立方体。这个立方体叫做规范观察体(Canonical View Volume, CVV)。矩阵的形式(1aspect⋅tan⁡(fovy2)00001tan⁡(fovy2)0000−zNear−zFarzNear−zFar2⋅zNea

2021-05-10 17:18:16 7986 1

原创 OpenGL Note : 在项目中包含 GLEW

GLEW 可以从官网下载,可以选择下载源码自行编译,或选择下载二进制版本。使用GLEW的静态版本glew32s.lib(注意这里的“s”),将库文件添加到你的库目录,将include内容添加到你的include目录。接下来,在VS的链接器选项里加上glew32s.lib。注意GLFW3(默认)也是编译成了一个静态库。此处下载二进制版本,解压后将 lib 库文件添加到库目录,将 include 内容添加到 include 目录。接下来,选择使用 GLEW 的静态版本 glew32s.lib (注意这里的“

2021-03-08 23:00:35 103

原创 在项目中使用 GLEW

若要在项目中使用 GLEW,需执行以下步骤:请确保引入的 glew.h 头文件位于代码中其他OpenGL头文件的顶部:#include <GL/glew.h>#include <GL/gl.h>#include <GL/glu.h>在程序代码中,在创建 GL 上下文后的某一个位置(通常在在一个初始化函数中),在对任何 OpenGL 函数调用之前,请先包含以下代码:GLenum err = glewInit();if( GLEW_OK != err

2021-03-07 22:43:13 554

原创 Golden Layout

Golden Layout 一种用于Webapps的多窗口布局管理器项目地址:https://github.com/golden-layout/golden-layout官网:https://golden-layout.com获取方法一cnpm install golden-layout方法二git clone https://github.com/golden-layout/golden-layout.git国内推荐使用Github的镜像地址 https://github.com...

2021-02-11 08:24:48 1146 2

原创 Windows 安装 SCons

从http://scons.org/pages/download.html获取安装程序。或者尝试Python附带的 pip 安装工具:pip install scons如果之后仍然找不到 scons ,请确保将Python的 Scripts/ 文件夹添加到 PATH 路径中。执行 scons -v 测试是否安装成功。...

2021-01-29 14:05:29 3013

原创 Ammo.js ( Bullet Physics Engine ) - Rigid Body

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-NCsAegER-1601475370420)(https://johanmedestrom.files.wordpress.com/2016/03/figure_412.png?w=1024#pic_center)]

2020-12-05 14:59:53 2964

原创 dat.GUI - API

dat.GUIdat.GUI 是一个轻量级的图形用户界面库(GUI 组件),使用这个库可以很容易地创建出能够改变代码变量的界面组件。GitHub 主页:https://github.com/dataarts/dat.gui使用步骤首先在页面的 标签中添加这个库。<script type="text/javascript" src="../libs/dat.gui.js"></script>定义一个 JavaScript 对象(这里假设叫做 controls)

2020-10-16 20:00:19 579

原创 Three.js 中的 Camera 及其视锥体坐标转换

关于 Three.js 中的 Camera 对象继承自基类 Object3D,它的另外的几个属性:.layers : Layers摄像机是一个layers的成员. 这是一个从Object3D继承而来的属性。当摄像机的视点被渲染的时候,物体必须和当前被看到的摄像机共享至少一个层。.matrixWorldInverse : Matrix4这是matrixWorld矩阵的逆矩阵。 MatrixWorld包含了相机的世界变换矩阵。.projectionMatrix : Matrix4

2020-10-03 22:24:15 1934

原创 Ammo.js - 简介

Ammo.js 使用Emscripten将 Bullet物理引擎 直接移植到JavaScript。源代码被直接翻译成JavaScript,未进行人工重写,因此功能与原始项目相同。Bullet Physics是一个开源的物理模拟引擎,世界三大物理引擎之一(另外两种是Havok和PhysX)。支持Bullet Physics物理引擎的设计软件有Blender 3D;Cienma 4D;LightWave 3D Core3Ds MaxMaya……因此,作为其JS版本的Ammo.js,其功能也是

2020-09-13 23:50:58 8633

原创 Three.js 为自制的材质添加阴影

一、阴影的由来Three.js 中使用 Shadow Map 的技术来产生阴影。Shadow Map(阴影贴图)是一种使用深度纹理来为渲染阴影提供解决方案的多通道计算,用投射光源代替最终视口来观察场景。通过移动视口到光源位置,可以观察到这个位置每个东西都是明亮的,因为从光的角度来看是没有阴影的。从光源的角度将场景的深度渲染到一张深度缓冲区中,我们可以在场景中获得一张阴影或者无阴影的贴图,一张阴影贴图。因此在使用Three.js中的光源时可以设置其 shadow map 的分辨率,分辨率越高,阴影质

2020-08-22 20:44:46 1044

原创 Three.js - MatCap 的简单尝试

关于MatCapMatCap(Material Capture 材质捕获)是对材质的近似,对于没有UV贴图的模型非常有效。MatCap(它只是一个规则的位图)定义了每个法线方向的曲面颜色,这极大地有助于显示模型中的细节。原始的MatCap在左侧,生成的着色表面在右侧。ShaderVertex Shader顶点着色器用来将模型顶点的法向量转化为视点坐标系下的法向量,并获得该法线中的xy分量varying vec2 Point;void main(){ vec3 vNorm

2020-07-17 15:01:12 682

原创 Babylon.js - 起步

相关网站Babylon.js 官方网站Babylon.js 中文网Babylon.js Github地址CDNhttps://cdn.babylonjs.com/babylon.jshttps://cdn.babylonjs.com/babylon.max.js可以在https://cdn.babylonjs.com/xxx上找到其他参考,其中xxx是可以在/dist文件夹中找到的文件夹结构,如下所示:https://cdn.babylonjs.com/gui/babylon.gui.

2020-07-04 13:46:14 2095

原创 Three.js + GLSL 消融效果

Codepen 源码

2020-05-16 13:42:50 710 7

原创 Dev C++ 下的OpenGL环境配置

为什么因为发红的C盘实在装不下Visual Studio,于是想借助轻巧的Dev C++配置OpenGL的开发环境(能够在Visual Studio开发的还是在Visual Studio上开发吧,毕竟案例较多)。怎么做一、相关的库1、OpenGL Library(核心库)包括115个函数,前缀:“gl”例:glColor3f() ,glTranslate3f()需要 gl.h,o...

2020-04-17 17:22:47 4440

原创 Cannonjs 中的 Demo 框架

上一文中提到了 Cannonjs 中的 Demo 框架,是否是必须的呢?个人觉得它不是必须的,Demo 框架本身只是方便了使用者将Cannonjs应用于Threejs。Demo 框架提供了 Scene PerspectiveCamera WebGLRenderer TrackballControls 等一些列在Threejs中所需的基本配置,同时也包括 dat.GUI 和 Stats个人认...

2020-04-10 12:04:18 812

原创 Cannon.js

详细内容请访问 Cannon.js 官方文档关于 Cannon.jsWeb的轻量级3D物理本身只有398KBCannon.js的制作者受three.js和ammo.js的启发,并由于缺乏支持浏览器的物理引擎,最终cannon.js出现了。Cannon.js物理引擎包括简单的碰撞检测,各种体形,接触,摩擦和约束。Cannon.js是用于游戏的刚体模拟库。程序员可以使用它来使他们的游戏对...

2020-02-18 22:11:22 6964 5

原创 Physijs - Web Worker 跨域访问

Physijs 使用了 web worker 以免影响应用程序的性能并且占用 WebGL 渲染时间。因此在将Physijs添加到项目中时,需要配置WorkerPhysijs.scripts.worker = './js/physijs_worker.js';Web Worker 的作用,就是为 JavaScript 创造多线程环境,允许主线程创建 Worker 线程,将一些任务分配给后者运...

2020-02-04 14:22:04 1061

计算机图形学实验——真实感图形场景的生成.doc

计算机图形学实验——真实感图形场景的生成.doc

2021-04-26

计算机图形学--区域填充算法的实现.pdf

计算机图形学--区域填充算法的实现.pdf

2021-04-26

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除