基本信息/父本的警告 在很多情况下,我要严厉的说“这段代码很烂!“。当要努力改善代码的时候,你当然想提高不好的地方,这是重点。 一般来说并不意味着代码库是坏的,或者它不能用于做出好东西。就在今年3月,我们有Pillars of Eternity, Ori and the Blind Forest and Cities: Skylines among top rated PC games
1. 画饼形图- (NSArray *)dataList {    if (_dataList == nil) {        _dataList = [NSArra
原创 2023-04-30 19:25:04
139阅读
射线通常在Unity中使用射线通常离不开两个东西,一个是Ray另一个是RaycastHit。Ray和RaycastHit都是struct结构体类型。Ray是具有开始点和方向的无穷线。说白了就是数学上的射线。那么RaycastHit是什么呢?他是获取射线投射碰撞返回的信息的一个结构体。它里面储存了关于射线碰撞的大量信息,如碰到游戏对象的刚体、碰撞器、UV纹理坐标等等。Ray是射线,RaycastHi
首先我也是刚开始玩unity,还很缺经验。 在学习制作《俄罗斯方块》游戏时,我需要在界面上显示分数、时间,以及开始、结束游戏等UI元素。我们直接将UI元素添加完成时,会发现在Scene中,UI界面相比于游戏的窗口来说实在太大了。当然了,这样不管它,最终也是可以显示出UI元素的。 请看下图, 在我们添加UI元素时,会自动将UI元素放入Canvas中,我们点击查看Canvas的属性
图层 https://developers.weixin.qq.com/miniprogram/dev/framework/view/ 框架的视图层由 WXML 与 WXSS 编写,由组件来进行展示。 将逻辑层的数据反映成视图,同时将视图层的事件发送给逻辑层。 WXML(WeiXin Markup ...
转载 2021-10-12 22:41:00
196阅读
2评论
人类皮肤的层次本教程介绍了多重纹理,也就是在着色器中多重纹理贴图的使用。它把章节“纹理球体”中着色器代码扩展成多重纹理,并且展示了结合它们的一种方法。如果你没有阅读那个教程,这会是一个很好的机会来了解它。表面层级很多真实的表面(比如上图中人类的皮肤)包含了不同颜色、透明、反射等的层次。如果最上面那层是不透明的并且不传输任何光,这个实际上并不影响渲染表面。但是,在大多数情况下最上层是(半)透明的,因
1.CPU过多的drawCall 使用批处理技术来减少drawCall数目复杂的脚本或者物理模拟2.GPU顶点处理 减少顶点数 优化几何体 使用Lod技术 使用遮挡剔除技术过多的顶点过多的逐顶点计算片元处理过多的片元过多的逐片计算优化方案;减少需要处理的片元数目控制绘制顺序警惕透明问题减少以实时的关照4.带宽使用了尺寸很大且未压缩的纹理分辨率过高的帧缓存优化方案:减少纹理大小利用分辨率缩放动态批处
裁剪工具弊端 裁剪工具后,发现整个项目图片都被裁剪,只剩被裁剪选中的那一部分。如果使用裁剪工具这个图片需要单独打开一
原创 28天前
41阅读
作者丨年糕妈妈技术团队 引言 当一个产品渐渐成熟,我们便开始重视产品性能的优化。而这其中图形性能的优化在iOS客户端占比较重要的部分。这里我们将介绍Core Animation的运行机制,首先我们不要被它的名字误导了,Core Animation不是只用来做动画的,iOS视图的显示都是通过它来完成的,所以我们想要优化图形性能必须了解Core Animation。下面我们根据苹果WWDC视频讲
转载 2023-08-24 18:05:49
103阅读
什么是Shader? GPU流水线上一些可高度编程的阶段。  一、渲染流水线(概念上)应用阶段  ----输--出--渲--染--图--元---->   几何阶段   -------输--出--屏--幕--空--间--顶--点--信--息--->   光栅化阶段准备场景数据  &nbsp
渲染过程渲染过程 - 通常从是三维场景出发、生成一张二维图像,由CPU和GPU共同合作完成。且通常分为以下几个概念阶段:应用阶段应用阶段通常有开发者主导,由CPU实现,并且输出渲染所需的几何信息 - 渲染图元(Renderding primitives),其主要有3个任务:需要准备好场景数据(摄像机、视锥体、模型、光源)做剔除(culling)操作设置模型的渲染状态(漫反射颜色、高光反射颜色等等)
Unity3D的光照渲染U3D支持不同的渲染路径,不同的渲染路径还有不同的表现效果,这中不同的效果体现在阴影以及光影方面。Deferred ShadingDeferred Shading拥有最佳的光照和阴影效果。当场景中存在许多的实时光照时,使用Deferred Shading也是最佳的方案。当然Deferred Shading对硬件的要求稍高。性能:显卡应支持Multiple Render Ta
转载 2024-03-18 13:27:32
76阅读
前言:渲染路径的存在是帮助我们来处理更多数量和更多类型的光照。一、前向渲染中的原理前向渲染是通过深度缓冲和颜色缓冲来实现的,使用深度缓冲来决定一个片元是否可见,如果可见,则更新颜色缓冲区中的颜色值。如果场景中有n个物体受m个光源的影响,那么要渲染整个场景,则需要n*m个pass,如果m较多的话,这个开销还是比较大的。那么如何在得到理想效果的同时来节省性能呢,unity提供了一些策略来进行处理前向渲
转载 2024-07-02 18:40:08
91阅读
目标:创建一个立方体网格代码支持立方体的旋转,缩放,位移,学会使用变换矩阵创建一个简单的摄像机投影 这个是渲染基础教程的第一部分。主要讲解了变换矩阵。为了了解变换矩阵,首先我们需要知道什么是网格,了解网格是如何工作的。最后本系列将探讨这些网格如何最终在显示器上以像素显示的。Manipulating points in space.1、    &nb
转载 2024-08-29 17:45:16
60阅读
在上周,我们发布了基于Unity 2018.1创作的《死者之书》,展示了Unity 2018所带来高端视觉效果的能力,让图形渲染达到了新的高度。是的,在Untiy 2018的发行周期中,图形渲染将是一个瞩目的焦点!在2018年,我们将会发布许多可以大幅增强Unity渲染能力的功能。不同的用户都有望获得一些新功能。例如: 为美术人员提供的可视化工具,或是为底层工程师提供的更强大的渲染控制。我们将在本
转载 2024-05-16 22:10:43
60阅读
unityunity 可以说是一个不错的工具,建立三维的场景非常方便,下面我们建立一个三维的场景,并且在三维的场景中和场景外分别建立系统去播放视频。所谓场景内就是在三维中播放视频,场景外就是在三维场景前表面的二维平面中播放视频。rtsp一般来说,大部分播放器支持rtmp,rtsp等视频服务,我们可以自己写,也可以使用现有的播放器。rtsp server 我们使用了live555 和 一个通用的go
转载 2024-03-22 19:59:42
200阅读
效果图如下(GIF因为为了把图压小所以删掉了一些帧导致后面速度突然很快,实际效果并不是这样~_~) 之前在玩很多游戏的时候,注意到里面的海水和陆地相交接的地方会产生海浪,比如《海岛奇兵》,以及水面会出现一个透明渐隐的过度,而不会在水面和陆地的交界处产生硬切边。其中海浪的效果考虑到可以使用单独的面片来制作,不过最近在试着通过深度比较的方式直接计算出水面和陆地相交接的位置来制作海边的浪花,这种方式很
转载 2024-08-29 11:46:30
80阅读
一、效果 Unity3D Shader 素描渲染 技术参考:https://io-meter.com/2014/12/31/sketch-rendering/效果思路来源于以前看的一部电影《小王子》当时就被里面的意境深深吸引,一种孤单星球的画面一直印在记忆里。于是就尝试了一下和素描渲染结合,发现别有一番韵味呢。二、实现1.素描shader主要思路就是使用如下系列不同密度的素描线条,通过叠加深
转载 2024-08-29 20:03:14
83阅读
今天过年回家了,不过要准备面试,认真学习下《Shader入门精要》因为里面不单涉及到shader的知识,还有一些渲染的知识,对我来说很有帮助。渲染流水线:    渲染流水线的目的是把场景从3维空间转化到2维空间,并最终在屏幕上显示的过程。之所以称之为流水线,是因为渲染有并行性,每个渲染图元可以并行处理,相互之间没有必然的前后顺序。渲染流水线的过程分为:应用阶段,几何阶段,光栅化
今天我们来介绍下场景渲染时经常用到的Lighting面板的属性的用途 这里是基于Unity2017.3.0 第五部分也是最后一个步骤每次烘焙的时候点击Generate Lighting,开始烘焙也可以勾选  Auto Generate下面我们按照数字依次介绍每一小部分               &
  • 1
  • 2
  • 3
  • 4
  • 5