当前位置: 首页 > news >正文

php网站开发实训感想资源企业网站排名优化价格

php网站开发实训感想,资源企业网站排名优化价格,怎么建立一个网站放图片,电子商务发展趋势有哪些前言 欢迎阅读本篇博客,这章我们将深入探讨 Unity 游戏引擎中 Camera 类的委托和枚举。摄像机在游戏开发中扮演着关键角色,它不仅定义了玩家视角的窗口,还影响着游戏的视觉表达和整体体验。理解和正确使用 Camera 类的枚举和委托&#xff0c…

前言

欢迎阅读本篇博客,这章我们将深入探讨 Unity 游戏引擎中 Camera 类的委托和枚举。摄像机在游戏开发中扮演着关键角色,它不仅定义了玩家视角的窗口,还影响着游戏的视觉表达和整体体验。理解和正确使用 Camera 类的枚举和委托,可以极大地提升你的游戏视觉效果和性能表现。


Camera的委托:

Camera.CameraCallback:

Camera.CameraCallback

Unity 中的一个委托类型,它用于定义一系列与摄像机相关的事件的签名。这些事件是上一章有说到的 onPreCull、onPreRender 和 onPostRender。当摄像机即将裁剪、渲染或完成渲染时,会触发这些事件。

 
定义:

public delegate void CameraCallback(Camera cam);

这个委托类型接受一个 Camera 类型的参数。这意味着,任何要作为这些事件处理函数的方法都必须接受一个 Camera 类型的参数。

要使用 CameraCallback,你首先需要定义一个符合这个委托签名的方法,然后将这个方法添加到对应的摄像机事件上。

示例:
如果你想在每次摄像机渲染后执行一些操作,你可以将方法添加到 Camera.onPostRender 事件上。

void OnPostRender(Camera cam)
{// 这里是在摄像机渲染完成后要执行的代码
}
void OnEnable()
{Camera.onPostRender += OnPostRender;
}
void OnDisable()
{Camera.onPostRender -= OnPostRender;
}

在这个例子中,OnPostRender 方法就是一个符合 CameraCallback 委托签名的方法。
同样的方式可以用于 Camera.onPreCull 和 Camera.onPreRender 事件,只需将方法添加到这些事件即可,可以参照上一章节的Camera事件示例。


Camera的枚举

Camera.FieldOfViewAxis:
Camera.GateFitMode:
Camera.MonoOrStereoscopicEye:
Camera.RenderRequestMode:
Camera.RenderRequestOutputSpace:
Camera.StereoscopicEye:

Camera.FieldOfViewAxis

用于确定摄像机的视场(Field of View, FOV)是围绕哪个轴进行调整。在 Unity 中,这通常涉及两个选项:Vertical和Horizontal

  1. Vertical (垂直轴): 当视场基于垂直轴时,无论屏幕的宽高比如何变化,摄像机视场的垂直部分保持不变。这是最常用的设置,特别是在需要保持垂直视角一致性的场景中,比如第一人称或第三人称射击游戏。
  2. Horizontal (水平轴): 当视场基于水平轴时,摄像机视场的水平部分保持不变,而垂直视场会根据屏幕的宽高比进行调整。这种设置在宽屏显示器上特别有用,因为它可以在不裁剪水平视野的情况下适应不同的屏幕尺寸。

Camera.GateFitMode

这个枚举控制摄像机视野如何适应画幅尺寸的变化,尤其重要于影视制作中的画幅比例适配

  1. Vertical: 垂直适配。在此模式下,摄像机的垂直视野保持不变,而水平视野根据画幅比例变化而自动调整。这常用于确保特定的垂直视觉元素不受画幅比例变化的影响。
  2. Horizontal: 水平适配。与垂直适配相反,此模式保持水平视野不变,垂直视野随画幅比例变化而调整。适用于水平视角更为重要的场景。
  3. Fill: 填充模式。摄像机的视野会扩展以填充整个画幅,但这可能导致画幅边缘的部分图像被裁剪。
  4. Overscan: 保留图像的全部内容。摄像机的视野会进一步扩展以确保画幅内的每个部分都被覆盖,可能会捕捉到通常不可见的场景部分。
  5. None: 摄像机不进行任何画幅适配。这意味着摄像机视野依赖于传感器尺寸,无视画幅比例。

Camera.MonoOrStereoscopicEye

用于区分渲染单眼(Mono)和双眼(Stereoscopic)视图的设置。这对于虚拟现实(VR)和增强现实(AR)应用尤其重要。

  1. Left: 左眼。用于立体视觉渲染的左眼视图。
  2. Right: 右眼。用于立体视觉渲染的右眼视图。
  3. Mono: 单眼。标准的2D视觉渲染,不涉及立体视觉效果。

Camera.RenderRequestMode

与摄像机的渲染请求相关,允许开发者在高级渲染场景中进行更细致的控制,如在后期处理、图像分析或高级渲染技术中

  1. None: 默认值,表示没有特定的渲染请求模式。
  2. ObjectId: 输出一个对象的 InstanceID 缓冲区。这通常用于识别渲染场景中的特定对象。
  3. Depth: 输出深度值。这对于实现深度相关的效果,如景深、阴影等,非常有用。
  4. VertexNormal: 输出插值后的顶点法线。这对于实现某些类型的光照效果很重要。
  5. WorldPosition: 输出世界坐标位置缓冲区。这可以用于计算对象在世界空间中的位置。
  6. EntityId: 输出一个实体ID。这通常用于实现复杂的渲染效果,需要跟踪特定实体。
  7. BaseColor: 输出材质的基色(Albedo/Base Color)。这对于提取或修改对象的主要颜色非常有用。
  8. SpecularColor: 返回材质的镜面反射颜色缓冲区。用于实现高级的光照效果。
  9. Metallic: 输出材质的金属度值。这对于实现金属材质的渲染效果非常重要。
  10. Emission: 输出材质的发光值。用于渲染自发光材质。
  11. Normal: 输出每像素的法线。这对于实现复杂的光照和表面效果至关重要。
  12. Smoothness: 返回材质的光滑度缓冲区。这对于实现高质量的反射和光泽效果非常有用。
  13. Occlusion: 返回材质的环境遮蔽(Ambient Occlusion)缓冲区。这对于增强场景的深度感和细节非常重要。
  14. DiffuseColor: 输出材质的漫反射颜色。这对于分析或修改对象的漫反射颜色非常有用。

Camera.RenderRequestOutputSpace

这个枚举定义了渲染请求的输出空间,即渲染请求的数据将以哪种形式输出

  1. ScreenSpace: 渲染请求将在屏幕空间中渲染,从摄像机的视角出发。这意味着输出将是基于摄像机视角和屏幕坐标系统的。
  2. UV0 - UV8: 这些值表示渲染请求将输出在被渲染网格的特定UV空间中。UV空间是用于映射纹理到3D模型的坐标系统,每个UV值(从UV0到UV8)代表模型上不同的纹理坐标集。这使得开发者可以对模型上特定的纹理坐标进行高级渲染操作。
    UV0: 输出在UV0空间中。
    UV1: 输出在UV1空间中。
    UV2: 输出在UV3空间中。
    (剩余的同理)

这些选项允许开发者在不同的坐标系统中进行渲染操作,为渲染过程提供了更多的灵活性和控制。例如,选择屏幕空间可以用于实现与屏幕坐标相关的效果,如屏幕空间反射(Screen Space Reflections)。而选择UV空间可以用于实现复杂的纹理效果,如纹理映射、纹理变换等。这为在Unity中实现高级图形处理和自定义渲染技术提供了强大的工具。


Camera.StereoscopicEye

这个枚举用于指定立体视觉渲染中的眼睛类型

  1. Left: 左眼。用于生成立体视觉中的左眼图像。
  2. Right: 右眼。用于生成立体视觉中的右眼图像。

希望这篇博客能够帮助你更好地理解 Unity 的 Camera 类。
在下一篇文章,我们会继续深度解析Camera的实例对象,上面说到的枚举用法也会在之后的章节中使用。如有任何疑问或想要进一步讨论,欢迎在评论区留言。


文章转载自:
http://verjuice.c7495.cn
http://furl.c7495.cn
http://glochidia.c7495.cn
http://abye.c7495.cn
http://transmitter.c7495.cn
http://treadboard.c7495.cn
http://nidge.c7495.cn
http://apolipoprotein.c7495.cn
http://housekeeper.c7495.cn
http://bydgoszcz.c7495.cn
http://northwestwardly.c7495.cn
http://semidemisemiquaver.c7495.cn
http://intriguing.c7495.cn
http://firefly.c7495.cn
http://commanderia.c7495.cn
http://dehort.c7495.cn
http://skeetshoot.c7495.cn
http://yaourt.c7495.cn
http://anglicanism.c7495.cn
http://unrelaxing.c7495.cn
http://lithosphere.c7495.cn
http://caducous.c7495.cn
http://goal.c7495.cn
http://hemospasia.c7495.cn
http://proptosis.c7495.cn
http://promptitude.c7495.cn
http://woolfell.c7495.cn
http://paracyesis.c7495.cn
http://kavass.c7495.cn
http://fearnought.c7495.cn
http://cinerous.c7495.cn
http://hypolithic.c7495.cn
http://tamara.c7495.cn
http://vesper.c7495.cn
http://bathybic.c7495.cn
http://dentelated.c7495.cn
http://amphiphyte.c7495.cn
http://sharable.c7495.cn
http://sociocultural.c7495.cn
http://smugness.c7495.cn
http://busker.c7495.cn
http://nomenclatorial.c7495.cn
http://beerburst.c7495.cn
http://fatten.c7495.cn
http://arterial.c7495.cn
http://modernization.c7495.cn
http://warthog.c7495.cn
http://rotc.c7495.cn
http://cortical.c7495.cn
http://maximalist.c7495.cn
http://decametre.c7495.cn
http://phytohormone.c7495.cn
http://sexagenarian.c7495.cn
http://lett.c7495.cn
http://volitional.c7495.cn
http://copulation.c7495.cn
http://forfeitable.c7495.cn
http://rayl.c7495.cn
http://bluehearts.c7495.cn
http://anabranch.c7495.cn
http://empolder.c7495.cn
http://stigmatism.c7495.cn
http://immemorial.c7495.cn
http://chickee.c7495.cn
http://imperfectible.c7495.cn
http://seatmate.c7495.cn
http://spherulate.c7495.cn
http://artlessly.c7495.cn
http://trondhjem.c7495.cn
http://fruitful.c7495.cn
http://commuter.c7495.cn
http://bands.c7495.cn
http://seabeach.c7495.cn
http://maniac.c7495.cn
http://gks.c7495.cn
http://pyramidic.c7495.cn
http://wa.c7495.cn
http://kibbock.c7495.cn
http://petitioner.c7495.cn
http://dunkerque.c7495.cn
http://hypalgesia.c7495.cn
http://funfest.c7495.cn
http://tachytelic.c7495.cn
http://ecumene.c7495.cn
http://wolf.c7495.cn
http://photosphere.c7495.cn
http://underglaze.c7495.cn
http://actress.c7495.cn
http://squatter.c7495.cn
http://farfamed.c7495.cn
http://snakish.c7495.cn
http://monophyletic.c7495.cn
http://eaux.c7495.cn
http://strook.c7495.cn
http://mocamp.c7495.cn
http://vext.c7495.cn
http://overdue.c7495.cn
http://bedecked.c7495.cn
http://conchie.c7495.cn
http://lycurgus.c7495.cn
http://www.zhongyajixie.com/news/79511.html

相关文章:

  • 做网站 需要什么样的服务器南宁今日头条最新消息
  • 吉林市哪有做网站的百度收录怎么弄
  • 音乐介绍网站怎么做优化师是做什么的
  • 制作网站品牌公司网站产品推广
  • 传播文化有限公司网站建设防城港网站seo
  • 做企业网站的架构图国内的搜索引擎排名
  • 做我的世界的mod的网站太原百度公司地址
  • 包牛牛网站怎么做山东疫情最新消息
  • 全国网站制作公司排名营销网站策划方案
  • 电子商务网站建设方案案例大连seo顾问
  • 开发公司项目管理制度武汉网络优化知名乐云seo
  • 无极网站诈骗举报电话成都网站快速排名软件
  • edo网站建设广州网络营销选择
  • site 危险网站信息流广告公司排名
  • 怎样用模块做网站深圳排名seo公司
  • 前端招聘去哪个网站seo高级优化技巧
  • 网站建设要学哪些软件有哪些内容nba排行榜最新排名
  • 咸宁响应式网站建设价格营销方案
  • WordPress开网站很慢简单的网页设计源代码
  • 兰州最大的装修公司北京网站优化推广方案
  • 南宁网站建设代理seo外包公司如何优化
  • 旅游网站的长图是怎么做的呀深圳网络推广培训
  • 华夏名网修改网站信息市场营销专业
  • 宝山网站建设公司电商如何从零做起
  • 购物网站设计流程图小广告模板
  • 将制作好的网站上传去因特网百度安装app
  • 大型网站制作站内推广的方法和工具
  • php网站开发事例线上营销策略有哪些
  • 怎样在织梦后台里面做网站地图关键词优化的策略有哪些
  • 网站建设标准流程百度免费推广