自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 基于three.js的shader入门教程 五

threejs交流群511163089 UV贴图 模型长的五颜六色的,一般都不是靠每个顶点带个color的attribute来的 而是用的贴图 那么贴图呐 图 是一个平面 坐标只有x和y 这就构成UV了 u就是x v就是y 怎么贴 每个顶点还是带attribute 但是只需要带uv带上一...

2019-12-19 15:32:21

阅读数 28

评论数 0

原创 基于three.js的shader入门教程 四

threejs交流群511163089 片源着色器 uniform 这种uniform变量啊 传入之后 可以在顶点着色器用 也可以在片源着色器用 uniform float a;这样 就是声明变量之前加一个uniform 这样在顶点或者片源着色器里面声明一下 外面再传入一个值 就可以使用了 ...

2019-12-09 18:13:53

阅读数 32

评论数 0

原创 基于three.js的shader入门教程 三

threejs交流群511163089 片源着色器 前面提了,点会三个三个的构造成三角面,这个就是给三角面上色了。 有varying这种开头的变量 有uniform开头的变量 varying vec3 a;这种变量 是从顶点着色器传来的 你需要在顶点着色器也写一句 var geom...

2019-11-20 17:20:55

阅读数 39

评论数 0

原创 基于three.js的shader入门教程 二

threejs交流群511163089 顶点着色器 这个是决定你那个点最后画在屏幕哪个位置的,最后xyz都是[-1,1]这么一个区间的值 z用来处理遮挡关系 点的位置怎么传入呐 有VAO,VBO这些东西 但是我们基于threejs,emm,threejs给你封装了一下叫attribute ...

2019-11-19 15:38:56

阅读数 42

评论数 0

原创 基于three.js的shader入门教程 一

threejs交流群511163089 扫盲一下 shader是什么东西 这暂时不重要 这里重要的是写这个需要编程语言。 threejs用的是glsl这款,语法跟C差不多。 这个在web端暂时只有顶点着色器 片源着色器可以用,这俩是啥? 模型是三角面构成的,每个点有个三维坐标。 顶点着...

2019-11-15 08:57:38

阅读数 66

评论数 0

原创 OpenGL API学习记录 glBlitFramebuffer

glBlitFramebuffer 将FBO中指定的东西copy到指定地方去 配合bind函数使用 下面例子拷贝的颜色缓存 glBindFramebuffer(GL_READ_FRAMEBUFFER, framebuffer); glBindFramebuffer(GL_DRAW_FRAME...

2020-02-22 09:45:02

阅读数 34

评论数 0

原创 OpenGL API学习记录glMapBuffer

除了glBufferSubData还有MapBuffer这种方式来修改数据 float data[] = { 0.5f, 1.0f, -0.35f ... }; glBindBuffer(GL_ARRAY_BUFFER, buffer); // 获取指针 void *ptr = glM...

2020-02-15 21:26:08

阅读数 11

评论数 0

原创 threejs 第四十五用 frustum的intersectsSphere

threejs交流群511163089 sphere.applyMatrix4( object.matrixWorld ); 判断与圆相交就是看到圆心距离是不是小于等于半径。 这中间发生了一些事情,圆心变过去了,但是半径喃。 sphere.radius*matrix.getMaxScal...

2020-02-13 16:37:41

阅读数 8

评论数 0

原创 OpenGL API学习记录glBufferData glBuferSubData glBindBufferRange

glBufferData glBufferSubData glBindBufferRange 第一个参数为target buffer 第二个这个是把buffer的内容进行修改 第三个有点像malloc 但这个是UBO学到的 先设定好第二个参数index 是block块的绑定点 第三个参数...

2020-02-12 16:37:41

阅读数 11

评论数 0

原创 threejs 第四十四用 半透明问题的研究

threejs交流群511163089 先看看真·大佬https://blog.csdn.net/qq_16756235/article/details/78303695 CustomDepth和Pixeldepth Unreal里面有这个东西 然后看完之后 就是我的理解和思路了 Cust...

2020-02-08 12:12:45

阅读数 35

评论数 0

原创 threejs 第四十三用 描边和局部描边的一种实现方式

threejs交流群511163089 这种方式不适合半透明物体 局部描边 你首先能知道哪些地方你要描边 也就是或者你有描边的整个mesh或者你有描边的所有顶点 然后构造mesh 第一步 画这个描边的物体 side=THREE.BackSide 以及 scale一个尺寸 这样会得到一...

2020-01-21 09:08:33

阅读数 52

评论数 0

原创 OpenGL三点求圆心

这是大佬的出处https://blog.csdn.net/yanmy2012/article/details/8111600 思路 先手一个平面方程 三个点到圆心距离相等 三个方程 3-1 2-1联立构造 构成这样的矩阵 D移到右边xyz就变为 半径就 ...

2020-01-17 09:09:53

阅读数 61

评论数 0

原创 threejs 第四十二用 模型矩阵求逆矩阵

threejs交流群511163089 一般矩阵求逆都是那种数学求法 考虑情况 在gl框架中 一般模型矩阵 都是 旋转加缩放加平移构造的 这矩阵 是不是可以通过缩放抵消 旋转抵消 位移抵消来构造一个新的矩阵而不是对原矩阵求逆来实现呐 Ap得到p2 但是p2如果抵消了所有变换 不就是恢复到了...

2020-01-10 21:46:16

阅读数 28

评论数 0

转载 学习webassembly

http://www.sohu.com/a/283054773_495695

2020-01-01 20:58:46

阅读数 19

评论数 0

转载 webassembly学习

https://www.cntofu.com/book/150/index.html 这个好 看了感觉就可以用了

2019-12-31 15:43:24

阅读数 55

评论数 0

转载 int 8 16 32 64这些是啥

原文https://www.cnblogs.com/daguonice/archive/2019/07/16/11193884.html Int8, 等于Byte, 占1个字节.   Int16, 等于short, 占2个字节. -32768 32767   Int32, 等于int,...

2019-12-30 10:44:27

阅读数 10

评论数 0

转载 内存对齐

三条: 1:数据成员对齐规则:结构(struct)(或联合(union))的数据成员,第一个数据成员放在offset为0的地方,以后每个数据成员存储的起始位置要从该成员大小或者成员的子成员大小(只要该成员有子成员,比如说是数组,结构体等)的整数倍开始(比如int在32位机为4字节,则要从4的整数...

2019-12-30 10:24:27

阅读数 7

评论数 0

原创 记一下 octave下载地址

https://www.gnu.org/software/octave/#install 这个是开源的数学可视化工具

2019-12-24 08:33:38

阅读数 7

评论数 0

原创 图形学数据结构 half-edge

这个东西,看了之后 只有一个感觉 WC 你看了之后,很可能会感觉俺也一样 这是https://www.flipcode.com/archives/The_Half-Edge_Data_Structure.shtml 介绍是用来精细化网格和简化网格用得上的 不同的拓扑形状你还要考虑一下是否...

2019-12-16 17:03:30

阅读数 12

评论数 0

原创 OpenGL 视锥体求法

看了这个https://blog.csdn.net/qq_31709249/article/details/80175119是高手 讲的是假设P是空间的一点(x,y,z)写成vec4(x,y,z,1) 最终[-1,1]的时候P2(x1/w1,y1/w1,z1/w1,1)然后proj*viewMo...

2019-11-26 09:31:00

阅读数 16

评论数 0

原创 C# ref out两个关键字学习一下

ref这个名字和C++的引用应该是一样的噢。功能也是传指针,好东西。 out这个关键字我第一次见是在glsl里头,你给个变量,在函数执行过程赋值,保存出来,或者在着色器每个阶段结束的时候抛出这个值给下一阶段配合in使用 C#里这个out貌似只有函数参数这个用法,而且函数里头必须赋值,不然还会报...

2019-11-13 15:13:31

阅读数 6

评论数 0

原创 C# List 学一下

Add 可以直接添加一个元素 AddRange添加一个集合在尾部 Insert(i,ele)可以插入一个元素 InsertRange(i,list2)插入一个list Count是数量 Contains是是否包含 Remove单个元素 RemoveAt(i)删除index=i的元素 ...

2019-11-07 10:10:27

阅读数 12

评论数 0

原创 threejs 第四十一用 shader实现蜂窝六边形纹理

实现原理是参考的shaderbook,做法和那书上也有点点的不一样,灵光一闪,这个可以生成到rtt上,然后贴给几何图形,我其实比较喜欢这个形状的,很有科技感。 threejs交流群511163089 ...

2019-11-03 14:31:20

阅读数 59

评论数 0

原创 C#学习 动态修改Mesh的Shader材质

u3d的shader内置了一种surf的一种裸的 v2f vert (appdata v) { v2f o; o.vertex = UnityObjectToClipPos(v.vertex); o.uv = TRANSFORM_TEX(v...

2019-10-27 10:31:01

阅读数 24

评论数 0

原创 C#学习 动态修改Mesh的attribute

获取到这个gameobject 然后拿到mesh 创建一个新的vertices或者uvs或者别的数组 替换掉就好了 void Update () { count+=speed*Time.deltaTime; if(m_cube) { Vector3[] vertices ...

2019-10-25 14:59:23

阅读数 48

评论数 0

原创 C#学习 创建一个Mesh

U3D中 一个GameObject被new出来就在场景中了 他有一些东西MeshFilterMeshRenderer filter是mesh的attribute部分 renderer是材质的部分 GameObject m_cube=new GameObject (); m_cube.AddC...

2019-10-25 14:56:47

阅读数 54

评论数 0

原创 web端的shader效果九 three.js里shader实现较平静的水面

具体做法可以参考threejs的reflector实现的拿到反射的部分 refactor实现的拿到折射的部分 然后我搭配的dudvMap 再加一个普通的phong 看起来还是比较像水面的 ...

2019-10-24 22:35:29

阅读数 54

评论数 0

原创 threejs 第四十用 shader实现剖切

var geo=new THREE.BoxBufferGeometry(10,10,10,1,1,1) var material=shader(); setInterval(() => { material.un...

2019-10-22 11:53:50

阅读数 40

评论数 0

原创 C# dictionary

static void Main(string[] args) { Dictionary<int, string> book = new Dictionary<int, string>(); book.Add...

2019-09-27 09:15:07

阅读数 9

评论数 0

原创 C++类型转换访问私有变量

#include<iostream> using namespace std; class A { public: A(int a1, int a2); private: int a; int b; }; A::A(int a1, int a2) :a(a1), b(a2) { ...

2019-09-17 15:44:22

阅读数 10

评论数 0

原创 threejs 第三十九用 WebWorker

var i=0; self.onmessage=function(event) { //console.log(event) postMessage(event.data+1) } function test() { postMessage(i++) setTime...

2019-09-17 14:57:25

阅读数 77

评论数 0

原创 C# 学习使用IntPtr

IntPtr _ptr = Marshal.AllocHGlobal(xxxx);申请空间 Marshal.Copy(Data, Offset, _ptr, xxxx);data的offset开始取xxxx长度给_ptr Marshal.FreeHGlobal(_p...

2019-09-06 08:57:57

阅读数 39

评论数 0

原创 web端的shader效果 8 代码实现小旋风 hasaki

这个hasaki有很多实现的方式 看起来还是有点意思 threejs交流群511163089

2019-09-03 15:22:41

阅读数 71

评论数 0

原创 C# 读写二进制文件

BinaryWriter bw; BinaryReader br; try { bw = new BinaryWriter(new FileStream("mydata", ...

2019-08-30 08:56:14

阅读数 23

评论数 0

原创 web端的shader效果七 线框模型 科技感

线框模型,初步实现了一下 侧面 我的这个做法房顶需要单独搞才会正常 不过我没有单独的房顶,没有搞来看

2019-08-21 15:21:14

阅读数 162

评论数 0

原创 webgl2 transformfeedback

这个东西 可以做到GPGPU粒子系统。。我也不知道其他地方怎么应用的 第一次学 gl.createVertexArray创建VAO 填上VBO 然后两个这个feedback =[gl.createTransformFeedback(),gl.createTransformFeedback()]...

2019-08-12 15:01:50

阅读数 59

评论数 0

原创 web端的shader效果6 黑白方格

https://www.shadertoy.com/view/WtjSRz 中午碎不着的时候看看 帮助你睡眠 threejs交流群511163089

2019-08-03 14:59:08

阅读数 51

评论数 0

原创 glsl进阶学习8

我们来画出平躺着的圆环 //SDF float value1 = sqrt(x*x+y*y)-r1; float value2 = sqrt(value1*value1+z*z)-r2; return value2; 但是。。这个东西怎么旋转平移喃。。我还需要再学习学习 ...

2019-08-02 08:56:24

阅读数 34

评论数 0

原创 glsl中 矩阵和向量的一些常见用法

http://en.wikibooks.org/wiki/GLSL_Programming/Applying_Matrix_Transformations

2019-07-29 10:46:56

阅读数 106

评论数 0

原创 react 开始 八 事件传递

class T1 extends React.Component { constructor(props) { super(props) this.state={ value:1 } this....

2019-07-22 09:19:09

阅读数 23

评论数 0

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