- 博客(40)
- 收藏
- 关注
原创 Blend 混合模式
混合常见的混合类型ShaderLab的混合命令当片元着色器产生一个颜色时,可以选择与颜色缓冲中的颜色进行混合。混合与两个参数有关:源颜色(source color) 和 目标颜色(destination color)。源颜色用S表示,指的是片元着色器生成的颜色值;目标颜色用D表示,指的是颜色缓冲中读取到的颜色值。将它们混合之后得到的输出颜色O会重新写入颜色缓冲区。混合是一个逐片元的操作,不可编程但是高度可配置。将源颜色S和目标颜色D通过混合等式(blend equation) 进行混合后得到输出颜色
2021-11-14 17:45:11 3144
原创 TA入门笔记(二十二)
游戏后期特效第四发 – 屏幕空间环境光遮蔽(SSAO)图形4.2 SSAO算法SSAO介绍AO(环境光遮蔽)环境光遮蔽,全程Ambient Occlusion,是计算机图形学中的一种着色和渲染技术,模拟光线达到物体的能力的粗略的全局方法,描述光线到达物体表面的能力,消耗很高AO的计算公式如下:AO(p,np)=1π∫ΩV(p,ω)max(np∗ω,0)dωAO(p,n_p)=\frac{1}{\pi}\int_\Omega V(p,\omega)max(n_p*\omega,0) d\ome.
2021-09-08 23:50:14 528
原创 TA入门笔记(二十一)
图形4.1 Bloom算法 辉光效果Bloom算法介绍效果展示画面中发亮的部分扩散到周围的效果。如下图中机甲周围的光晕下图对比中可以看到,使用了Bloom的画面远处的云更亮了,并且带有一种朦胧的感觉对于会发光的特效比如烟花来说,是否使用Bloom的差距还是比较大的定义Bloom,也称辉光效果,用来模拟真实世界中摄像机的图像效果,可以让画面中比较亮的区域扩散到周围来达到真实的明亮效果实现思路通过设定阈值来提取原图像中比较亮的区域,然后利用高斯模糊对提取后的图像进行模糊处理来模拟光线向外
2021-09-01 22:38:02 416
原创 TA入门笔记(二十)
你所需要了解的几种纹理压缩格式原理特定于平台的覆盖的纹理压缩格式图形3.6 纹理压缩纹理压缩纹理压缩是为了解决内存、带宽问题,专为在计算机图形渲染系统中存储纹理而使用的图像压缩技术图片与纹理图片格式:图片格式是图片文件的存储格式,通常在磁盘、内存中存储和传输文件时使用,如 jpg、png、gif、bmp等纹理格式:纹理格式是显卡能直接进行采样的纹理数据格式,通常在向显卡中加载纹理时使用纹理管线在拿到一张贴图之后,如果设置了纹理压缩格式,CPU就会按照我们设定的格式进行压缩,传递给GPU.
2021-08-29 20:10:12 1083
原创 TA入门笔记·美术向(二)
美术1.1.3 角色设计精要角色设计流程左侧为通用的设计流程,右侧为角色设计的流程一、确定角色关键词了解角色,并找到那些让角色独一无二的关键词世界观、背景、能力、职业、性格、爱好都可以成为角色的重要标识这些关键词是角色的灵魂,角色的所有组成部分都服务于这些关键词本质上是为了确定设计的根本需求,后续所有工作都要围绕这些需求展开二、收集素材和灵感设计平衡:10%的疯狂和90%的日常(与人类有关,文化参考,日常经验,有基础的设计,真实世界的参考,不要让观众感到糊涂)人们总在说设计语言,因
2021-08-26 12:16:07 567 1
原创 TA入门笔记(十九)
移动端GPU的TB(D)R架构移动端GPU概况下图为2020年手机安卓端SoC的Top10排行目前的top300中,从手机SoC厂商来看,高通占比49.2%,相比于其他手机厂商优势较大,其次是华为28.6%,联发科21%,三星1.1%,其余厂商均未进入top300下图为安卓端GPU的top10排行GPU上,高通的Adreno与Mali的GPU市场分别占比49.2%与48.2%,而PowerVR-GPU在安卓机器上使用较少,占比仅有2.6%移动端和桌面端功耗对比桌面级主流性能平台
2021-08-25 20:37:39 464
原创 TA入门笔记(十八)
参考may佬《技术美术百人计划》Unity3D研究院之URP下PrePassZEarly Z图形3.5 Early-Z和Z-prepass深度测试Depth Test复习传统渲染管线中的深度测试深度测试用于解决物体可见遮挡性的问题深度测试的逻辑for(each triangle T) //对每一个三角形 { for(each fragment(x,y,z) in T) //对每一个三角形中的片元 { if(fragment.z &l.
2021-08-24 16:31:20 870 1
原创 TA入门笔记(十七)
参考may佬《技术美术百人计划》IMR, TBR, TBDR 还有GPU架构方面的一些理解移动设备GPU架构知识汇总图形3.4 延迟渲染管线介绍渲染路径(Rendering Path)决定光照的实现方式。简言之,就是当前渲染目标使用的光照流程渲染方式前向渲染(Forward Rendering)在渲染每一帧时,每一个顶点/片元都要执行一次片元着色器中的代码,这时需要将所有的光照信息都传递到片元着色器中进行计算,包括了距离很远影响微乎其微的小型光源,会造成很大的浪费待渲染几何体→\ri.
2021-08-22 00:18:20 464
原创 TA入门笔记(十六)
图形3.3 曲面细分与几何着色器Tessellation Shader(TESS)曲面细分着色器应用细分直线逼近曲线,细分几何体进行平滑,制作海浪、雪地等地形,与置换贴图结合来改变物体的形状,增加表面细节单独使用置换贴图的问题在于,如果模型的面数不够多,边缘就会非常锐利,效果不好;使用曲面细分着色器使模型面数变多之后,细节的表达会更精确、更平滑使用曲面细分着色器可以根据一定的规则(如距离)来动态地调整模型的复杂度,比起直接使用高模能带来更好的性能...
2021-08-21 04:09:43 1068
原创 TA入门笔记(十五)
图形3.1 深度与模板测试模板测试定义渲染管线模板测试是逐片元操作中的一部分片元经过逐片元操作的各种测试之后被输出到帧缓冲区,最后输出到屏幕上逐片元操作阶段高度可配置,不可编程Pixel Ownership Test:控制对当前屏幕的使用权限,如在unity中只对game窗口和scene窗口中的像素有权限,其他的窗口部分会被剔除掉Scissor Test:裁剪测试,自己定义在窗口中渲染哪些部分,默认是全部渲染Alpha Test:透明度测试,设定透明度阈值,大于该阈值的
2021-08-18 04:30:37 712
原创 TA入门笔记(十四)
Flowmap的实现Flowmap的定义flowmap实质上是一张记录了2D向量信息的纹理,使用颜色(通常为RG通道)记录该处向量场的方向,让模型上某一点表现出定量流动的特征,通过在shader中偏移UV再对纹理进行采样来模拟流动效果前置了解:UV映射UV坐标用于查找纹理的颜色值,使用(R,G)颜色通道表示坐标,黑色(0,0),绿色(0,1),红色(1,0),黄色(1,1)UV贴图上颜色相同的地方意味着纹理采样的时候使用了同一位置Flowmap通过上边携带的向量场信息对UV进行了
2021-08-16 01:12:13 486
原创 TA入门笔记(十三)
图形2.5 BUMP图改进Bump Mapping介绍在屏幕上绘制物体时需要表达物体的细节,从尺度方面来说物体的细节可以分成三种:宏观尺度、中观尺度、微观尺度宏观尺度:由顶点、三角形或其他的几何图元来表示(三维角色的头、四肢)中观尺度:包含了宏观和微观之间的特征细节比较复杂,没法用单个三角形来进行渲染细节足够大,让观察者能够看出几个像素以上的表面曲率变化(如皱纹、衣服褶皱、砖块之间的细节)微观尺度:作用于着色模型中,通常在像素着色器里实现,并使用纹理贴图作为参数;着色模型模拟了物体表面
2021-08-13 02:35:31 573
原创 TA入门笔记(十二)
参考may佬《技术美术百人计划》冯乐乐《UnityShader 入门精要》HDR,ToneMapping,Bloom之间的关系从认识到实现:HDR Bloom in UnityUnity用户手册图形2.7 LDR与HDR基本概念动态范围(Dynamic Range)= 最高亮度/最低亮度HDR(高动态范围)= High Dynamic RangeLDR(低动态范围)= Low Dynamic Range不同品牌、不同型号的显示器的实际物理亮度是不同的,LDR的范围是匹配当前屏幕最.
2021-08-10 23:06:09 303
原创 TA入门笔记·美术向(一)
参考&拓展may佬《技术美术百人计划》《塞尔达荒野之息》设计理念游戏中的色彩:深度剖析游戏设计中最实用的工具 美术工作者如何点亮TA的技术(Technical )技能树?美术1.1 美术理论基础光影光影是物体呈现在人们眼前的时候,不同的受光面及其明暗变化以及物体的影子黑白灰黑白灰指亮面、灰面、暗面,属于素描的三大面,主要体现出一个物体的整体受光的过程。光线照射,受光面为亮,形成白背光为暗,形成黑其余过渡部分为灰明暗五调子高光:受光面最亮的一个点亮面:受光面的高.
2021-08-07 19:14:56 1565
原创 TA入门笔记(十)
参考may佬《技术美术百人计划》冯乐乐《UnityShader 入门精要》【Unity Shaders】法线纹理(Normal Mapping)的实现细节光照模型 PBR图形2.4 传统经验光照模型详解光照模型概述光照模型(illumination model),也称为明暗模型,用于计算物体某点处的光强(颜色)。从算法理论基础而言,光照模型分为两类:一种是基于物理理论的,另一种是基于经验模型的。基于物理理论的光照模型(PBR)偏重于使用物理的度量和统计方法,效果非常真实,但是计算复杂,.
2021-08-07 03:42:17 367
原创 TA入门笔记(九)
图形2.3 HLSL常用函数基本数学运算函数说明max(a,b)返回较大的那个min(a,b)返回较小的那个mul(a,b)两变量相乘,常用于矩阵运算abs(a)返回a的绝对值round(a)返回最接近a的整数sqrt(a)返回a的平方根rsqrt(a)返回a的平方根的倒数degress(a)将弧度转换成角度radians(a)将角度转换成弧度noise(a)噪声函数,对每个值返回0或1图形相关数学函数实
2021-08-05 14:15:32 232
原创 TA入门笔记(八)
图形2.2 模型与材质基础渲染管线与模型基础与模型和材质相关的渲染管线蓝色部分为可编程部分,渲染管线中与模型材质相关的部分为顶点着色器和片元着色器顶点着色器:将顶点坐标从模型空间转换到齐次裁剪空间,通过在顶点着色器中改变顶点位置可实现顶点动画片元着色器:将光栅化阶段插值的模型信息进行计算 ,在这个阶段可进行光照模型的计算(如PBR光照模型)以及一些想实现的效果模型实现原理UV将模型表面展开,平铺在一个二维坐标系中,模型的每个顶点在二维坐标系和三维坐标系中都能一 一对应,二维坐标系中顶
2021-08-02 14:00:14 513
原创 暑期实训(十五)
饮食健康管理系统——用户界面模块个人心得这次暑期实训终于结束了。回想项目刚开始的时候,心中想的念头是:我们能不能顺利完成这次项目?一群数媒的学生,没有任何前后端知识的基础,选了一个软工的题目,真的能顺利把它完成吗?但是,这一个多月的时间证明了,人的潜力是无穷的。短短一个月时间,我们从几乎什么都不懂的小白,成长到能够合作顺利完成这个项目,这放在一个月前我是肯定不敢相信的。事实上,我们顺利地把项目完成了,还完成的不错。看着一个项目从无到有,从只有概念到功能全都实现,看着有模有样,一股自豪感油然而生,这是从
2021-07-30 11:26:19 94
原创 暑期实训(十四)
饮食健康管理系统——用户界面模块错误信息提示(2)之前的错误信息出现了小问题,弹出的警示框无法消失,只能切换到其他页面才能消除尝试了许多方法,包括设置判断条件,添加关闭按钮,但是均不起作用。最后只得尝试曲线救国,通过给警示框内增加一个叉号,并给它一个url跳转到本界面,警示框通过这种方法得以消除。细节调整将用户名调整至居中位置屏幕自适应因为发现主页在不同大小的显示器内会产生错位的问题,整个页面会歪到一边,所以添加了当屏幕尺寸变化时的自适应效果@media (min-width: 160
2021-07-29 18:06:33 64
原创 暑期实训(十三)
饮食健康管理系统——用户界面模块内容调整(2)增加了对登录状态下功能按钮的判断,如果处于登录状态,则将登录改为登出<div class="top"> <div class="headPic"> <img id="h-avatar" src="avatar.jpg"> </div> <div id="ID">User-ID</div> <a href="{{ url_for('
2021-07-28 11:31:54 76
原创 TA入门笔记(六)
参考may佬《技术美术百人计划》冯乐乐《Unity Shader入门精要》《OpenGL ES 3.0 编程指南》图形1.4 PC手机图形API介绍基础概念电脑的工作原理: 电脑是由各种不同的硬件组成,由驱动软件驱使硬件进行工作。所有的软件工程师都会直接或间接的使用到驱动图形API定义: 是一个图形库,用于渲染2D、3D矢量图形的跨语言、跨平台的应用程序编程接口(API),针对GPU。应用端: 即我们自己的程序端,相对于OpenGL ES,我们属于应用端图元: 图形元素,要渲染的几何物体.
2021-07-25 23:38:40 265
原创 TA入门笔记(五)
参考may佬《技术美术百人计划》冯乐乐《Unity Shader入门精要》闫令琪《GAMES101-现代计算机图形学入门》图形1.3 纹理基础纹理概念定义宏观来说,纹理是一张图片(未必)微观来看,是一种可供着色器读写的结构化存储形式包括颜色信息、高度、纹理通道、法线等信息,还包含纹理采样的一些设置存储信息可以不来自外部,而是作为函数进行计算作用纹理最初的目的是通过图像、函数或其他的数据源来修正模型的表现,从而模拟物体表面的一项技术减少建模的几何细节,从而降低建模工作量.
2021-07-25 01:33:32 243
原创 暑期实训(十二)
饮食健康管理系统——用户界面模块内容调整(1)根据修改意见,调整了侧边栏的样式,增加导航字样,缩小按钮尺寸,增加边框优化了侧边按钮的html结构,使得鼠标置于按钮上的时候可以变成手指的形状<div class="SideMenu"> <div class="side_title"> <h2>导航</h2> </div> <ul class="side"> <li&g
2021-07-24 11:52:24 72
原创 暑期实训(十一)
饮食健康管理系统——用户界面模块范例图片展示在后端同学的帮助下,将数据库中用户上传和收藏的图片显示在主页上def index(): if g.user is None: user_ID = 1 else: user_ID = g.user[0] ID = np.str(user_ID) pic_result0 = backinform0.read_pic(ID) # 读数据库并传到变量result内,饮食记录的四张图以及篇数
2021-07-23 12:43:31 85
原创 TA入门笔记(四)
参考may佬《技术美术百人计划》冯乐乐《Unity Shader入门精要》图形1.2.3 MVP矩阵变换变换矩阵将3D物体转化到2D平面为各个空间的运用做准备MVP矩阵MVP矩阵分别是模型(Model)矩阵、观察(View)矩阵、投影(Projection)矩阵。坐标空间因为一些概念只有在特定的坐标空间下才有意义,才更容易理解,所以我们需要在不同的情况下使用不同的坐标空间。顶点的起始坐标位于局部空间(模型空间),在这里被称作局部坐标(Local Coordinate),之后会变.
2021-07-23 02:29:27 264
原创 TA入门笔记(三)
参考may佬《技术美术百人计划》图形1.2.2 矩阵运算线性代数一次方程为线性方程,具有可加性和比例性可加性:f(x1+x2)=f(x1)+f(x2)f(x_1+x_2)=f(x_1)+f(x_2)f(x1+x2)=f(x1)+f(x2)比例性:f(kx)=kf(x)f(kx)=kf(x)f(kx)=kf(x)线性空间:直线变换后依旧是直线,并且等比;坐标原点保持不变非线性空间:空间扭曲、非等距、原点位移矩阵的定义什么是矩阵由m×nm\times nm×n个数ai.
2021-07-21 18:26:40 244
原创 暑期实训(十)
饮食健康管理系统——用户界面模块远程操作由于没法回到学校,只能通过远程桌面操作的方式将各个模块汇总到学校的电脑上首先使用EasyConnect连接学校的VPN在win10的搜索栏中搜索“远程桌面连接”在本地资源-详细信息中选择自己资源所在的磁盘,方便资源拷贝输入远程电脑的ip地址和用户名密码进行登录登录之后即可进行远程操控...
2021-07-20 12:13:34 98
原创 TA入门笔记(二)
参考may佬《技术美术百人计划》庄懂的技术美术入门课(美术向)冯乐乐《unity shader 入门精要》图形1.2.1 向量基础向量定义向量的定义向量是有大小和方向的有向线段向量没有位置箭头为向量的结束,尾是向量的开始向量所表示的位移可描述为平行于轴的位移序列数组表示向量在各个方向的位移向量的表示:三维(x,y,z)二维 (x,y)向量与标量向量为有大小有方向的有向线段标量只有大小,没有方向向量与点点有位置,无实际大小方向向量有大小方向,无位置任何.
2021-07-17 21:33:37 238
原创 暑期实训(九)
饮食健康管理系统——用户界面模块登陆界面修饰(3)之前添加的背景图片清晰度有点低,而且还有水印,于是就想索性给背景图加上类似毛玻璃的模糊效果,不但解决图片清晰度问题,还能显得更有“高级感”。但是在给背景加了模糊之后,图片没变化反而输入的部分变模糊了因为背景图是给整个body加的,所以给body加模糊会被子元素继承,导致网页主体变模糊于是通过伪元素方法来制作毛玻璃效果body:after{ content: ""; width: 100%; height: 100%;
2021-07-16 17:40:38 75
原创 暑期实训(八)
饮食健康管理系统——用户界面模块登陆界面修饰(2)之前制作了登录界面的基本框架和布局,这次来把登陆界面进行一些修饰增加一些圆角矩形元素,让登录界面和个人主页的风格保持一致.box{ width: 300px; height: 400px; background-color: #f1f1f1; border-radius: 30px ; margin: 160px auto; padding: 40px 0 0 0;}.title{ t
2021-07-15 17:25:27 86
原创 TA入门笔记(一)
TA入门笔记(一)参考may佬《技术美术百人计划》冯乐乐《unity shader 入门精要》图形1.1 渲染流水线整体流程应用阶段:准备场景数据、粗粒度剔除、进行渲染设置、输出到几何阶段几何阶段:顶点着色器、曲面细分、几何着色器、顶点裁剪、屏幕映射光栅化阶段:三角形设置、三角形遍历、片元着色器、逐片元操作逐片元操作:裁剪测试、透明度测试、深度测试、模板测试、混合CPU流水线(应用阶段)准备基本场景数据场景物体数据变换数据:位置、旋转、缩放网格数据:顶点位
2021-07-14 10:09:34 1306
原创 暑期实训(七)
饮食健康管理系统——用户界面模块用户主页修饰(3)顶栏功能按钮考虑到模块间跳转之后需要有返回的功能,以及进入主页之后的展示内容,在顶栏右侧增加了三个功能按钮<div class="top"> <div class="headPic"> <img id="h-avatar" src="avatar.jpg"> </div> <div id="ID">User-ID</div> <
2021-07-13 15:10:48 62
原创 暑期实训(六)
饮食健康管理系统——用户界面模块用户主页修饰(2)食谱展示 原定方案中一个页面纵向展示三个模块的效果太过臃肿,于是决定增大每个模块的高度,滚动浏览三个模块。通过浮动将原本纵向罗列的图片改为横向排布.cb_box .pic{ width: 180px; margin: 72px 26px 0 26px;}.cb_box li{ float: left;}为每个模块限定位置和大小.cb_box{ height: 280px;...
2021-07-12 09:58:24 83
原创 暑期实训(五)
饮食健康管理系统——用户界面模块用户主页修饰顶栏 仿照学校主页的配色风格,设计顶栏,并添加用户头像、用户名等信息<div class="top"> <div class="headPic"> <img id="h-avatar" src="avatar.jpg"> </div> <div id="ID">User-ID</div></div>.t...
2021-07-11 12:35:42 81
原创 暑期实训(四)
饮食健康管理系统——用户界面模块个人主页搭建功能需求主页需要的功能包括用户信息展示,跳转到社交云、饮食记录、个人收藏、饮食识别模块的跳转接口,发布食谱、收藏食谱、饮食推荐功能,食谱展示。功能实现(1) 我主要负责前端部分,使用html对网页功能进行部署。 用一个无序列表来制作侧边栏<div class="SideMenu"> <ul class="side"> <li>...
2021-07-08 15:53:43 101
原创 暑期实训(三)
饮食健康管理系统设计与实现——用户界面部分目录登录界面搭建功能实现布局修饰(1)登录界面搭建功能实现 由于之前没有前端开发的经验,只好先学习了一下html来进行登录界面的功能实现。首先使用表格搭建出了登录功能的基本框架<div class="box"> <form> <table align="center"> <tr> <...
2021-07-03 12:44:08 78
原创 暑期实训(二)
暑期实训——饮食健康管理系统设计与实现环境配置 由于之前使用的社区版pycharm无法直接使用flask框架,因此使用学校邮箱申请专业版。 项目使用python3.7.4,使用anaconda3创建环境,并安装flask$ pip install Flask创建新项目时,可以直接选择flask项目,并且选择准备好的python虚拟环境...
2021-07-01 23:57:11 79
原创 暑期实训(一)
饮食健康管理系统——用户界面模块项目简介项目分工主要工作 由于没有适合本专业的项目,无奈只能选择一个从未接触过的领域。所有东西都需要从头学起,只能说任务非常艰巨。项目简介针对日常饮食以及医养健康等问题,本项目拟研发面向中餐的饮食健康管理系统,结合饮食记录、分析、推荐等功能,为人工智能技术落地传统行业、助力日常饮食健康的社区推广打下基础。项目分工 本次项目中担任了开发用户模块的任务。但是前后端开发都是从未接触过的领域,所以任务非常艰巨...
2021-06-30 22:50:15 178 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人