BI-Planar Mapping

ArtStation – Bi-Planar mapping URP Deferred and Forward shader, JP Lee Complete Example here Bi-Planar Mapping GitLab | JP Lee on Patreon

Advanced Ambient occlusion method implementation for your look-dev

Advanced Ambient occlusion method implementation for your look-dev. Advanced Ambient occlusion Purpose: AO handling of shaders When you guys usually using URP or basic mobile hardware is very simple. When using HDRP, more sophisticated specular shielding and environment reflection shielding are performed using the AO calculation formula using bent normal. A similar effect is to […]

Lut Bake for Substance Painter.

AUTHOR: JPLEE I think you will understand a little bit about Tome mapping and Post Process Stack code structure by watching the previous two lectures. 看了前面两节课,我想你会对时间映射和后处理堆栈代码结构有一点了解。 Overview. After 2019, there were several requirements that I was received when communicating with the art team, and They wanted theirs rendering result after using post-processing in the […]

Post Process Tone Mapping Editor Tweak.

Purpose:This course will be given to the art department flexibility.We will try to add parameters to Neutral Tone-mapping and use editor mode.Depending on the nature of the project, try adding Fast Tone mapping, which focuses on faster operation, to the Post Process.Let’s try porting Unreal Engine’s Aces tone mapping to Unity.Exploring this course will give […]

Stylized toon Urp update.

草稿日期。2021년 7월 13일. Preface After leaving the company after a long time, I am going to research some rendering techniques and post them on Github. By writing this pages, I think I will be able to remind myself of my old memories. So… I want to say that I didn’t want to do anything too […]


This content is a brief summary of part of the mobile MMORPG development process from 2018 to early 2019. 本内容是对2018年至2019年初移动MMORPG部分发展历程的简要总结。 NEED VPN IF YOU LIVE IN MAINLAND OF CHINA

Iridescence Lit model improvement for URP

Iridescence Lit model improvement for URP Iridescence based thin film. Transparent refraction with distortion. Preserved Physically correct pbr based. Masking for decal printing. More learning about this? Check it my Patreon.

Custom Curve Tone map generated Substance LUT.

Fully Support to Neutral tone mapper and ACES and finally Custom Curve tone map also available generation Hollywood style LUT for Substance Painter. Reference Filmic Tonemapping with Piecewise Power Curves – Filmic Worlds

Advanced Skin Shader for Next-Gen Mobile games.

The fastest operating technique of the NORMAL BLUR SUB-SURFACE SCATTERING APPROACHING HOW TO… 处理角色渲染时,通常会听到许多有关SSS效果的信息。通常,移动游戏开发环境不常使用Normal Blur Sub-Surface技术的原因是,因为Normal纹理的Mip-Map需要使用DDX、DDY或Gaussian Blur进行实时Blur处理。现在,内容将介绍预处理实时处理部分的想法步骤。 In order to check the demand of the internal art team, it is the process of extracting the mobile game character data of Netease and testing the internally developed Shader.The left side is a shader using the Gaussian […]

toon Shader Additional FX

Purpose of implementations Simple transmittance FX for toony rendering. mesh attribute based shade expression. Bloom and tone-mapped for toony rendering look-development. This character model from XRD game data not my own works. 这个来自XRD游戏数据的角色模型不是我自己的作品。 左边是一般的Cartoon rendering。 右边显示的是接近于最近日本动画色调的渲染结果。 虽然美术们认为Tone Mapping主要用于具有真实效果的渲染效果中,但是在最近制作的日本动画渲染技巧下,即使是2D,也往往会使用HDR的情况很多。根据这种趋势,使用Tone Mapping、Bloom和Exposure方法,会得到更有高级感的产物。 最近在日本动漫中甚至还出现了使用Reflection Mapping的情况。 Left is a typical Cartoon rendering. The right side renders closer to the more […]

X2M mobile mmo rpg

整个世界的空间为32 Km X 32 Km真实地形世界空间为16Km x 16Km 运行时包括Light Probe SH数据流时完全流式处理(内部开发)。 远近阴影处理。-VariableShadow,Distance ShadowMap(将视差阴影缓存视为纹理数组)-阴影卷代理网格系统。 网格地形。– 网格地形的自适应密度。– 网格地形lod + HLOD。-用于地形表面细节系统的置换网格贴花。(我制作的移动友好系统)-随机反耕技术。 详细查看Vista地形。-预烘焙的灯光舞台数据。-自适应远景地形网格物体生成。-支持一天中的时间。-距离淡出与真实地形纹理集融合。 水。-无限新世表面由Perspective空间剔除表面网格。-平面反射系统不考虑高度差。 Fully world space have 32Km X 32KmReal terrain world space have 16Km x 16KmFull streaming when runtime included LightProbe SH data streaming(Inhouse develop). Near and far shadow treatment.-VariableShadow, Distance ShadowMap (Considered Parallax Shadow cache as texture […]

Lookdev environment scene creation for mobile game.

I am setting up a look-dev scene for the development team while doing mobile rendering processing for a Japanese parent company, not a company. It is not a light theme because it is a standard rendering scene. 我正在为开发团队设置look-dev场景,同时为日本母公司而不是公司进行移动渲染处理。 这不是轻主题,因为它是标准渲染场景。 LOOK DEV MATERIAL PREVIEW PROJECT INITIALIZING DEMONSTRATION FOR UNITY. Sync camera for game view with scene […]

[Advanced]Anti-Tilled technique by Stochastic

以下包含对于Anti-Tilled technique 的技术理论上的内容. Unity 基于技术内容创建技术演示。 Unity3D Engine. World Machine for generation big terrain. View distance blending for vista texture. Stochastic anti-repeating visualization result. Xrp Feature result. Test type for Rocky Ground texture. Example of Unlit. Grass field 活用篇. 此 Feature 使 ALU 数量增加近 15 个。但是,此功能通常使用 LOD1 的 LOD2 着色器。一般来说,近距离时不会产生重复的视觉感觉,因为当与相机的距离超过50米时,主要会出现重复的感觉。审查并应用整个 Velod。对于地形,混合 4 张纹理的情况很常见,在某些情况下,有时混合到 7 或 8 […]

Dual Specular IBL demonstration.

  When I set up the lighting, I think I want to control the reflection expression of golden armor or metallic independently of the ambient light. By modifying the Specular IBL and Custom Specular IBL created from SkyIBL in the shader, you can understand how the material expression can be further enhanced. 라이팅 설정을 하다보면 […]

Skin shader in Gamma Space improvement WIP.

WIP LIST. Custom Shadow color. Reflection Occlusion. Branch for Equipment. Dual Lobe specualar.

Mip-chain artist template by Substance designer.

커스텀 밉맵체인에 대응하는 Substance designer template 제작을 간단하게 소개 하고 게임엔진에서 사용하는 툴의 특성을 이해 한 후 TA 가 어떤 추가 업무를 추진 할 수 있는지 소개한다. 신규 Graph 를 생성 하고 Graph Name 을 설정하세요. 일단 간단하게 템플릿을 제작 한 후 이것을 다시 PIXEL PROCESSOR 로 제구성 할 것이다.

Tree leaf color painter from 2016 in years.

In general, leaves use a vertex color channel for wind effect.We can define vertex color for color expression in uv2 or Tangent for richer color effect.Also we can add this to our extended c-buffer to do GPU instancing.In 2016, GPU instances were not added, so we optimized them using a different method. 通常,叶子使用顶点颜色通道获得风的效果。我们可以定义顶点颜色以在uv2或Tangent中表达颜色,以获得更丰富的颜色效果。我们也可以将其添加到扩展的c缓冲区中以进行GPU实例化。在2016年,未添加GPU实例,因此我们使用另一种方法对其进行了优化。

More Realistic eyeball approach for Mobile visualization.

It is fully optimized for mobile game rendering.The PBR lighting model was not used for.Using the BlinnPhong Approximation based on the energy conservation formula.Parallax mapping with directivity is used.The artist can control the direction of the highlight regardless of the angle of the sun, and the intensity of the highlight is automatically corrected in the […]


这主要通过两个步骤完成。首先,创建一个基于网格的基本贴花。 Overview: Collect the opinions of artists participating in the X2M project and propose alternative opinions. Because the number of mixed textures of the terrain is limited, we provide a function for precise expression of very special areas or small areas.The advantage allows specific areas to be expressed in detail.Disadvantages occur a slight overdraft.Recommendation: It […]

(WIP) Stylized Toon ver.0.7

Written by JP.Lee心动的 Technical Art team leader.Former Allegorithmic Adobe Lead technical Artist.Former Netease Technical art director at HZ.Former Samsung Electronics R&D Center Technical Artist and Researcher. Most of my time since I left the company has been devoted to Stylized Shading research. This is because most of the company’s projects are either cartoon rendering or […]

Anti-Tilled technique by Stochastic

Solution researcher : JP Explore ways to reduce the appearance of far-ground floor texture repetitions as clearly as possible.Technology that can be used on top level mobile hardware or primarily for the PC version. Applied this method belowEvaluate count of instructor. conclusion. 2 or 3 SAMPLERs increase.It supports a number of mobile hardware released after […]


IDT ODT Simulated ACES UE4 log Tone-Mapped SD的旧版本不具有ACES色彩配置文件功能,因此我自己制作。 之后,我们与总部开发团队进行了沟通,并将OpenColor IO正式添加到SD,并将ACES Tonemapping添加到Render节点。

Customized Unity Standard mobile PBR from 2018

Change issued. Environment reflection method used by UE4. Some reflect approximation method has optimized friendly performance of mobile. Huge reduce to texture sampler counts. AO map generated used from height data with simple math.

Matcap Rim lighting for Mobile by 2013 in years.

SBSAR with Matcap Rim lighting for Mobile hardware. 我将继续与Substance Unity合作,在现有的B2M之外创建一些着色器。 由于我们尚未对光的方向进行任何计算,因此根据支持的视图空间的遮罩替换了环境照明。 坦白讲,复杂的结构很困难,因为这种方法必须在较旧的移动硬件上使用。 所以我决定一起制作一个实质性的移动版本… 我们只是添加一些参数。 为了在不显着增加度量和参数的情况下减少计算量,我们基于查找纹理实现了边缘照明,然后基于边缘颜色的颜色基础构造了各种圆形渐变贴图。 我们为Invert.Y提供了一个范围来处理现有法线贴图的Y轴反转。 -1至1 …如果创建自定义材质检查器并再次附加组件,则可以将其除以true false。 但是,这种方法很麻烦,而且无论如何都只能以-1和1的值传递给normal.y。 自从我于2007年首次开发和使用它以来,它已经针对手机游戏环境进行了修改。 从那时起,这种方法在中国已被广泛使用。


Written by JP.Lee 我是心动的 Technical art team leader. 这是一款独立游戏的遗产,我在2013年与两个朋友合作后做了一点工作。将3D渲染处理直接添加到cocos2D引擎并集成Bullet物理引擎。这款游戏失去了独立游戏的初衷,因为它本身就是游戏工具。 我与一个小型办公室签约,每月支付约3000元人民币。当我离开工作时,我聚集在办公室并逐渐成长。 在Spine工具问世之前,我必须自己开发工具,但是正在开发它的朋友专门从事引擎和工具的生产工作,因此我每天晚上花费大量时间来添加和组织功能。也许即使在此期间,作为技术艺术家,他也专注于功能。 This is legacy of an indie game that I made a little after work with two friends in 2013.Add 3D rendering processing directly to cocos2D engine and integrate Bullet physics engine.It was a game that lost the original goal of the indie game […]

Gamma Space skin shader development.

Pre-integrated skin shader development under certain special requirements as gamma space render mode. Notion Link


•Overview. 根据针对场景lightmap效果改善的调查结果,发现现在美术在制作的时候效率非常低 首先来理解一下照明美术的特性吧。 因为没有完全使用实时GI,所以需要进行烘焙 这个时候需要进行非常多的修改制作 照明美术的作业需要非常细致,并且结果直接关系到最终的用户体验,因此可以支持反复预览查看的制作环境是一个非常重要的核心要素 现在古剑的业务工作流中很多要素是自动化的 以前也提过很多次,好的品质是需要将自动化减少到最小的 带着匠人精神自己一个细节一个要素的开关各个选项,去观察每个照明的值以及物件的GI相关设定值带来的变化,美术同学根据自己的理解完成最终效果 制作这个工具的根本原因是现在的工作环境,无法在短时间内让美术同学及时确认到场景的照明设置结果,从而保证品质 除去几个程序组提及的问题之外,如果这个工具可以帮助美术同学在每个区域都能达到高品质的话,那我们就来把这个功能做出来吧 •Inspection list. 使用金街场景进行了实验 金街场景整体在全部Visible的基本环境内针对特定区域画面进行了实验,Progressive GPU light-mapper平均需要2分30秒~3分钟左右。 通常为了准确确认感觉,在计算阶段需要将时间缩短至15秒~30秒。 现在Local场景的Contribution GI是全部关掉的状态。 意思就是照明美术无法在本地确认应用GI效果的结果。 Contribution GI关掉的原因据程序组所说,是因为某个需求设置为关闭状态,只在烘焙服务器运行时自动打开。 Contribution GI选项如果是开着的状态,会使 CPU占有率增加,影响某个部门的业务。 •Contribution GI option risk test. •在场景内添加了约4k个物件,测试选项在被激活和被关闭时的状态下,CPU的占有度变化 •测试时,必须关掉Auto Generate lightmap选项 •实际上在本地制作的场景Auto Generate lightmap选项需要关闭 •烘焙命令以快捷键的形式提供给美术的话,个人认为美术可以直接点击按钮 •任何CPU占有度都基本上没有变化 •烘焙时间测定 •测试GPU : RTX 2080 TI Super. •使用了约3k个Contribution static物件 •所有物件的Stitching seams关闭。(无需所有物件都应用,如果全部打开,会使烘焙服务器处理时间暴增:此部分在CPU内另外处理,处理完之后开始生成烘焙数据。) Baketime via GPU : […]

A description of the restoration of the glossy effect of indoor scene PBR.

A description of the restoration of the glossy effect of indoor scene PBR. a fundamental cause For the Unity or Unreal engines they are currently using, the following structures are taken. There is a technique called Indirect GI in unity and a lighting bake in unreal engines that states Stationary. In general, both of these […]


MATERIALS LOD FOR INGAME PLAY.Organization / Netease Pangu Studio Technical Art Team.Author / JP.Lee Commit schedule : 2016-9-26. To be honest, this is already four years ago.Most recently I do not use this method.Because many easier methods have already been discovered. 老实说,这已经是四年前了。最近我不使用这种方法。因为已经发现了许多更简单的方法。 OverviewWhat is this have purpose of requirement.In the game, according to the change […]

Simple Jade Shader for mobile devices.

Simple Jade Shader for mobile devices. I shared the Unity shader code we made in 2018.I remember using a Surface Shader at that time because it was a time when a Built-In pipeline was used.Still, I think you can check the part that I thought was the key in the code below. Because it was […]

Simple Pool Water

WATER SYSTEM Initialized version. OVERVIEW Water surface color variable according to camera angle of degree. Used Depth read with Fresnel angular. Remove to useless functions . Removed to Foam effect. Removed some unused lerp. Only use to one of Normal texture. Just piece of one normal texture sampler2D. The piece of two texture parameter that […]

Local Reflection bake system

Properties 虽然还没有必要全部实现Unity3D的所有设置,如果能分阶段都实现的话是最好的。下面罗列了基本要实现的值。1.intensity Value in Runtime settings. 2.Blend Distance : Distance值根据Sky Cube或者相邻的其它 Volum box的Cubmap之间的距离来设置Blending的值。 3.Box Projection. Properties 虽然还没有必要全部实现Unity3D的所有设置,如果能分阶段都实现的话是最好的。下面罗列了基本要实现的值。1.Marmoset Engine 에서 제작 한 Local Reflection system : This solution for Unity3D version 4.X with 5.x 2.Included Source code. 为了进行Capture测试,在放中间放了一个球来确认。 为了进行Capture测试,在放中间放了一个球来确认。 在部分已经应用了局部反射的状态下进行的测试。 在部分已经应用了局部反射的状态下进行的测试。 必须使用局部反射的例子。(如果在之前的系统的话,在这里会反射出室外天空的)


从2018年开始,开始在手游中使用HDR(虽然精度只有一半)。此外,必须始终与HDR一起使用的Tone Mapping现在也开始普遍应用于手游。对于从未体验到这种环境的中国游戏研发团队来说,有一项必不可少的功能。大部分的贴图制作都是通过Substance Painter或者Substance Designer进行的,但没有在实际游戏中应用的Tone mapping处理的时候,就无法精准匹配表面反射或最终色彩。TA部门已经找到并解决了这个问题点。 Starting in 2018, we began to use HDR (although half the precision) in mobile games.In addition, Tone Mapping, which should always be applied together with HDR, is now commonplace in mobile games.There are some features that must be provided to Chinese game developers who have not encountered this environment.If you’re […]

Snow Cover with Multiple Blend Shader Practice.

这些是根据其他美术团队的需求开发shader的实验品。 Shader development prototypes according to the demand of other art teams.

Planar mirror reflection

Feature List Floor reflection shader that seems like planar mirror reflection. UV based fake depth fade of reflection added. Source code here Code Snippet below


Purpose of implementation. I was used screen space light texture technique (matcap or light-cap) since from 2006 in years.And then my new stuff of new matcap technique (I called dual matcap technique) since by 2015 in years When I developed android mobile game in Korea.Basically matcap technique is So famous tweak shader lighting technique for […]

Cartoon Style Splash FX practice.

Purpose of Practice 概要。项目瀑布波纹效果的要求。内容。参考游戏 : RIM2 Shader 的实现。使用不同的两张波纹(Ripple)纹理,各自设置不同的速度使波纹效果更自然。为了让Mesh的波纹呈现向外围渐渐消失的效果,使用Vertex Color。 为了在Shader使波纹的边缘自然地Fade-out,Vertex color 要用 mask。 先用黑色填满整体后,在开着Soft-Selection的状态下选择里面的Vertex填满红色。 用Vertex tool的Blur功能把整体修改得自然。 Mesh的内部也需要添加自然波纹效果的话,内部也设置成黑色便可。 Shader Snippet 该着色器是使用“ Amplify Shader Editor”创建的。 This shader was created using the Amplify Shader Editor.

[experimental]LightMap shader tweaking.

The purpose if implementation. Open exposure value for artist When they want to adjustment to baked-indirect merged pixel result. GI信息存储在Unity3D中的Baked Indirect中,使用Meta Pass来确定相邻的颜色值。评估最终结果的视觉效果时,比起真实值,控制更人为的颜色值的Color Bleeding强度,为了接近美术想要的最终品质,修改Unity3D提供的LightMap最终计算方式的过程。在创作早期原型时,使用Amplify Shader Editor等来快速实现,并与美术协商,以便将其添加到内部项目的lightmap计算中。 GI information saved in Baked Indirect of Unity3D is determined by using Meta Pass for adjacent color values.When evaluating the visual effects of the final result, we control the Color […]

Development of three-dimensional pupil shader.

Purpose of implementations. One draw call rendering by one mesh. Supporting customization of eyeball pupil. Simple refraction FX. 开发瞳孔时,我特别重视的是,能够准确地引导出美术的最终要求。 使用前两个Mesh的方法是由美术队自制的,是消费两个Draw-Call的,没有特别的折射感,所以和美术简单讨论后使用了两个Specular,但是从实际的太阳光源的位置计算出来,其中一个是根据用户的视角计算的,即镜头视角。 我为美术提供的最终目标是Horizon Zero Dawn。 在实现过程中,我们合并了两个Draw-call,最大限度地降低了精度,消除了所有的GGX运算,只使用Normalized Blinn-Phong Specular实现。 ALU在处理折射时有所增加,但删除了依赖于PBR的某些部分,使得整体ALU比正常的PBR少了一些,实现了CustomUV,从而减少了Pixel Shader Stage计算的部分。 现在,我们使用Replection Cubemap来实现油膜的光泽度,而在下一个优化版本中,将更改为Dual Parabolic Reflection,以进一步优化它。 创作原型时,使用Amplify Shader Editor来实现了它。 实现了Eye Refraction function, Mode写为Create的话之后在代码中会以函数形式来记录。 写最终代码的时候,有着更易读的优点。 An important part of my development of the pupils was to pinpoint exactly what […]

Energy conserved specular blinn-phong.

Energy conserved specular blinn-phong implementation record Elements of Implementations Energy conserved diffuse with specular. Physically based Fresnel. Environments Reflectance. Ambient lighting adjustment controller. Energy conserved diffuse with specular. about energy conserved specular. Energy conserved experimental code block. Simulate of Specular Reflectance


Purpose of implementation. Fully support to mobile devices such as opengl-es 2.x to 3.x. Under limited of instruction counts 180. Under limited texture fetching counts 6. 完全支持移动设备,例如opengl-es 2.x至3.x. 指令数限制下为180。 在有限的纹理抓取下计数为6。 The game I’m developing now implements a point light that doesn’t work at all in the rendering core. In order to achieve the permeation effect, […]

dev-log 2016 in years at 网易

Late version of monthly report at the April to august 2016 in years. It is an old monthly document that is almost 5 years old.At that time, Unity’s PBR was an unstable version, and Linear Space was not added.Since the establishment of TEAM had not yet been completed, most of the fields were carried out […]

Journey to the west [:西遊記:]

2013年,当我担任公司的技术美术总监时,我介绍了两个人开始制作的独立游戏。我没有建立公司,但是我在良才洞Soho中心设有一个小办公室,并在与Someone合作之后进行了开发。即使有一个基准测试游戏,但制作过程却是由于这样的事实,即诞生更接近工程师。 第二天就去公司工作……这并不困难,但游戏性也是一个问题。没那么有趣。这是一个独立的游戏项目,我对缺乏乐趣感到非常兴奋,从这个过程中我收获了很多。我似乎已获得很长一段时间的报酬,但感觉不到。在开发的早期阶段,游戏本身与技术方法之间的联系非常差,而且不是很好。 可能已经过了几个月,但这是值得的。 In 2013, I introduced indie games that I started making with two acquaintances when I worked as a technical art director for a company.I didn’t build a company, but I got a small office at the Soho Center in Yangjae-dong and developed it after work with Someone.Even though there was a game […]


FASTEST MOBILE FAKE BRDF SKIN SHADER This character used custom mobile skin shader.That shading theory is blend normal and sin base ambient cut out darkness attenuation. It support to all android device and ios device all even thought It just support for NVIDIA Shield game device. We some made skin shader. Our fake SSS skin […]

NVIDIA Tegra3 Tech Dev log by since 2011 in years.

Tech prototype works for Tegra3 GPU ordered from NVIDIA. Using the Nvidia physics engine with some configuration is very important.After the monster has completely fallen, you can see that chronic problem of Rag-doll trembling is not seen. 使用具有某些配置的Nvidia物理引擎非常重要。在怪物完全掉下之后,您可以看到没有看到Ragdoll的长期发抖问题。 Improvement works since by 2012 in years.

Freeze On Air online dev since by 2004 in years.

Invested from and developed at Brownie Studio.A casual sports online game project where I left the design company Artbox in 2004 and participated.My joined the Motion Design Team as a team leader and served as a development PM.All engines and tools were developed in-house without using a commercial engine.Overall, the careers of the team […]

댓글 남기기