自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 收藏
  • 关注

原创 2021-09-23 准备工作

为了使阅读起来更方便,新建了一个空项目,去掉不用的包,然后将UGUI包中的代码拷贝到新项目中。项目结构如下:包里由“Editor”和“Runtime”两个文件夹,“Editor”应该主要是UI在编辑器中比如像Inspector面板,或者添加组件入口之类的代码。所以主要关注的是“Runtime”中的代码。“Runtime”文件夹下层包括EventSystem,UI两个文件夹。绘制和交互事件两个系统共同构成了UGUI。在第一次创建一个UI组件时可以看到会自动创建一个canvas和一个EventSystem

2021-09-23 19:33:01 91

原创 在unity中高性能的绘制相同网格和材质的物体-GPU Instance

参考链接-/https://catlikecoding.com/unity/tutorials/1、在pass伊始的时候加入预编译 #pragma multi_compile_instancing这会生成两个shader变种,有关 #pragma multi_compile参阅unity官方手册。在材质中会增加一个toggle表明你要选择哪一种。此处勾选上。2、包含u...

2020-04-19 20:13:13 475

原创 在unity中高性能的绘制相同网格和材质的物体-SRP Bather

1

2020-04-19 16:46:52 570 1

原创 Constant Buffers

1、相对于顶点和索引,Constant Buffers更新平凡。所以我们将之创建在UploadHeap上而非Default Heap上。2、Constant Buffer的大小,必须是256byte的整数。这是取决于硬件的。内存分配大小计算方法。假设: byteSize = 300.// (300 + 255) & ˜255// 555 & ˜255// 0x022B ...

2019-09-04 21:48:12 292

原创 D3D中的Pixel Shader(Fragment Shader in Unity)

作用:处理三角形内部的像素。(Vertex Shader是处理顶点的)顶点数据从App流向Vertex Shader,如果有Geometry Shader则经过Geometry Shader,然后流向Pixel Shader。如图:1、经过Pixel Shader处理的像素,不一定会写入到BackBuffer里。可以调用Clip方法丢弃。也可能会在模板测试深度测试里面被丢弃。2、通过Ear...

2019-09-04 20:45:07 532

原创 d3d 中的vertex shader

也算是对U3D的shader Lab做一个什么了解。1、语义(semantics):分为系统语义,和自定义语义。系统语义SV_开头。自定义语义从语法上讲随意。2、如果没有eometry shader,则必须在vertex shader中完成顶点的转换(clip space)。如果有geometry shader的话,则可以延迟到geometry shader。注意透视除法不在在这两个阶段中。...

2019-09-04 20:24:51 489

原创 Unity中的static模型的D3D原理

原理:D3D中的DefaultHeap(D3D12_HEAP_TYPE_DEFAULT)只允许GPU从中读取数据,CPU是不可以访问的。将顶点buffer写入到DefaultHeap可以提高性能。CPU是不可以访问DefaultHeap的,所以要将顶点buffer写入到DefaultHeap还需要一个中转(D3D12_HEAP_TYPE_UPLOAD)。代码实现:Microsoft::WRL...

2019-09-03 09:54:10 480

原创 开始d3d渲染

准备工作:告知GPU要渲染的图片的内存地址。(后置缓冲)告知GPU何时渲染可以渲染出蓝色背景// D3D.cpp : 定义应用程序的入口点。//#include "stdafx.h"#include "D3D.h"#include <d3d11.h>#define MAX_LOADSTRING 100// 全局变量:HINSTANCE hInst; ...

2019-08-14 17:07:40 498

原创 DirectX初始化到VS2017生成的windows桌面应用程序

主要是教程中初始化窗口的代码千篇一律,不想copy就自动生成项目了,生成代码和教程代码差不多,略有不同。com组件:1、一个com组件是由一个或者一系列的类通过暴露来的接口控制的。2、有自己的id3、都有Release()方法释放内存4、一般以I开头需要引入的头文件:<d3d11.h> 核心头文件<d3dx11.h> 扩展头文件<d3dx10.h&g...

2019-08-12 21:13:51 607

原创 CPU GPU DirectX

CPU GPU DirectX作为DirectX与不同的硬件显卡交流的中间件DXGI(directx graphic interface)作为DirectX与不同的硬件显卡交流的中间件DXGI(directx graphic interface)画面撕裂的形成原因,以及对应解决方案:前后置缓冲。当然三缓冲也是可以的图片来源:http://www.directxtutorial.c...

2019-08-12 16:07:13 300

空空如也

空空如也

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

TA关注的人

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