BlueRose
文章97
标签28
分类7

文章分类

CommonUI学习笔记

CommonUI学习笔记

前言

CommonUI主要解决了层叠式UI输入事件处理、多平台多输入设备管理问题以及控件的激活/卸载。
其中比较重要的机制是CommonUI实现的输入路由功能,其代码位于:CommonGameViewportClient.hCommonUIActionRouterBase.h

官方教学

TextRender显示中文的方法

TextRender显示中文的方法

前言

早几年学习UE的时候发现TextRender渲染中文的时候会出现□的情况,一直都去解决。最近又遇到这个需求了,最终在官方论坛上找到了解决方案,现在分享给大家。

UE5RayTracing篇-2-——Pix与NSight-Graphics补充

UE5RayTracing篇-2-——Pix与NSight-Graphics补充

UE5RayTracing篇(1)——NSight Graphics

UE5RayTracing篇(1)——NSight Graphics

最近打算开始研究UE的RayTracing,但欲先利其事必先利器,必要的Debug手段还是需要会用。在发现RenderDoc不支持RayTracing后,花了些时间学习了一下NSight Graphics。一般的流程就是使用NSight启动要调试的游戏(项目)进程,之后按F11截帧并使用所需工具查看。下面的章节将会简单介绍一下它的功能。

虚幻商城发布插件指南

虚幻商城发布插件指南

虚幻商城发布插件指南

前段时间本人尝试发布自己写的插件到Market Place,因为每次审核会需要1~3天时间不等,所以在这里分享一下我的经验。

MultiDraw中文文档

MultiDraw中文文档

简介

本插件通过UnrealEngine的MeshDraw框架实现类似Unity的多Pass效果,无需后处理即可实现BackFace描边、剖切效果。并且可以让一个部位同时渲染Unlit与Lit光照模式的Material。

MultiDraw5.0案例项目
MultiDraw5.1及后续版本案例项目
使用方法:下载在Plugins文件中放入MultiDraw,即可运行。
注意:本项目只有5.0及以上版本才可以打开。

MultiDraw Document

MultiDraw Document

Introduction

This plugin uses UnrealEngine’s MeshDraw framework to achieve a multi-Pass effect looks like Unity’s, with no post-processing required to achieve strokes and cutoff.

MultiDraw UE5.0 ExampleProject
MultiDraw UE5.1 and newer versions ExampleProject
Usage:Download this project,and put MultiDraw plugin into plugins folder.
Notice:This project only UE5.0 and higher can run.

中文文档

UE4渲染用贴图资源实时更换

UE4渲染用贴图资源实时更换

最近做卡通渲染,美术同学反应每次更换渲染贴图都需要手动替换资源并重启引擎相当麻烦。所以花时间了解了一下UE4的渲染资源逻辑。并且找到了解决方法。

Ue4后处理逻辑简析

Ue4后处理逻辑简析

APostProcessVolume

通常我们在后处理体积,也就是APostProcessVolume设置后处理效果。它存储了struct FPostProcessSettings Settings;
加入关卡后,会存储在UWorld的PostProcessVolumes中,之后依次调用DoPostProcessVolume=》OverridePostProcessSettings,之后修改FSceneView中的FFinalPostProcessSettings FinalPostProcessSettings。(对所有属性进行插值计算)

最后就可以通过View.FinalPostProcessSettings来读取后处理参数了。

UE4通过修改FMeshBatch参数实现反向剔除

UE4通过修改FMeshBatch参数实现反向剔除

之前我有写过两篇通过自定义场景代理来实现描边的文章:
https://zhuanlan.zhihu.com/p/69139579
https://zhuanlan.zhihu.com/p/69156465

当时有一个问题没解决,就是不知道如何将材质设置为反向剔除,因为UE4只有双面渲染选项,毕竟只有卡通渲染等一些非真实渲染才需要这种功能。但经过MeshDraw框架的学习,我发现只需要在场景代理中设置一下FMeshBatch剔除属性即可,而且这个方法没有任何副作用。其他代码可以参考我的插画。效果如图(没有使用深度偏移)