xoyojank
码龄16年
  • 2,193,308
    被访问
  • 270
    原创
  • 1,279,088
    排名
  • 1,829
    粉丝
  • 7
    铁粉
关注
提问 私信

个人简介:来如流水兮逝如风,不知何处来兮何所终

IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:广东省
  • 加入CSDN时间: 2006-11-02
博客简介:

逍遥剑客

博客描述:
专注于3D游戏技术
查看详细资料
个人成就
  • 博客专家认证
  • 获得291次点赞
  • 内容获得911次评论
  • 获得477次收藏
创作历程
  • 1篇
    2021年
  • 6篇
    2020年
  • 3篇
    2019年
  • 7篇
    2018年
  • 11篇
    2017年
  • 17篇
    2016年
  • 12篇
    2015年
  • 16篇
    2014年
  • 11篇
    2013年
  • 23篇
    2012年
  • 24篇
    2011年
  • 35篇
    2010年
  • 50篇
    2009年
  • 73篇
    2008年
  • 56篇
    2007年
  • 27篇
    2006年
成就勋章
TA的专栏
  • Nebula引擎研究
    42篇
  • GPU编程
    35篇
  • 书籍资料
    12篇
  • 乱七八糟
    53篇
  • 图像处理
    16篇
  • 图形技术
    59篇
  • 基础知识
    34篇
  • 山口山寨
    19篇
  • 引擎研究
    95篇
  • 动画物理
    28篇
  • 游戏逻辑
    17篇
  • 视频音频
    10篇
  • 工具开发
    27篇
  • 虚拟现实
    21篇
友情链接
  • 《巨人》
  • 《佣兵天下》
  • 《斗战神》
  • 《众神争霸》
  • 《无尽之剑:命运》
  • 《Lucky Night: Texas Hold'em VR》
  • 《Lucky Night VR》
  • 《绝地求生: 刺激战场》
  • 《乐高无限》
  • 最近
  • 文章
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

UE4画面亮度可视化

参考https://www.artstation.com/artwork/3omYwB做一个这样的视图, 用于Debug光照亮度:需要获取当前像素的亮度(nit), 映射成一个颜色显示出来获取当前像素亮度正好在EyeAdaption Debug视图有一个nit显示:翻代码发现NIT/LUX值是在Shader中实现的(骚操作):向上查找Luminance来源自HDRSceneColorSampler:而HDRSceneColorTexture就是Toonmap前的SceneColor:
原创
发布博客 2021.01.14 ·
1248 阅读 ·
3 点赞 ·
0 评论

UE4黑苹果BigSur开发环境搭建

硬件配置配件型号CPUAMD 锐龙9 3950X 16核32线程主板华擎 B550M Steel Legend显卡AMD Radeon RX 5700 XT (8G GDDR6)内存美商海盗船 DDR4 3600 64GB(32G×2)SSD美商海盗船 Force MP600 2TB SSD PCI-E 4.0机箱恩杰 H510 白色 ATX机箱电源长城 额定650W G6金牌电源散热器利民 Frozen EYE 280 A.
原创
发布博客 2020.11.27 ·
1427 阅读 ·
0 点赞 ·
0 评论

UE4 iOS Metal FrameBufferFetchMRT

最近在手机上尝试了一下把SceneColor改成R11G11B10, 使用FrameBufferFetch来读取深度.Android上可以使用framebuffer_fetch_depth_stencil, 但是iOS上不支持DepthFetch.所以就尝试使用MRT输出一个R16F的Depth, 需要依赖FramebufferFetchMRT的实现.4.26中UE4已经增加了延迟渲染, FramebufferFetchMRT已经实现了vk和metal的, 所以很方便地就合并了过来, 用法是这样的:
原创
发布博客 2020.11.27 ·
994 阅读 ·
0 点赞 ·
0 评论

UE4 Cook On The Fly通过数据线连接Android手机

UE4如果需要在真机上测试, 通常编译+打包+安装需要很长的时间.所以UE4提供了Cook On The Fly的功能, 就是默认只编译, 资源的Cook在运行时由FileHostServer进行Cook, 这样就不用每次测试经历痛苦的打包过程.对于Android平台来说, 只需要安装apk, 资源文件(默认在obb里)仍然保存在PC机上, 通过网络进行访问.PC机做为FileHostServer, 对于请求的文件进行Cook , 如果没有请求的则不会进行Cook.但是对于公司的网络策略来说, 手机
原创
发布博客 2020.06.26 ·
1704 阅读 ·
0 点赞 ·
0 评论

UE4多个分支版本兼容相同的工程dll

如果是从源代码编译出来的UE4, 明明代码完全一样, 不同机器编译出来的dll却无法兼容, 这对于多分支开发非常不方便.在老版本里有个通过版本号判断的逻辑, 新版本改没了. 分析UE4源码后发现目前是通过BulidId来判断dll跟引擎是不是兼容的. 那BuildId是哪里来的呢?其实像发布的UE4版本是通过"-Formal"参数来生成固定的BuildId的, 不过我们也可以直接修改Engine/Build/Build.version来生成固定的BuildId:改完后如果代码一样, 不同机器
原创
发布博客 2020.06.26 ·
849 阅读 ·
2 点赞 ·
1 评论

踩了个TextureArray的坑

就是做了两层混合的材质, 采样了两TextureArray, 但是因为TextureIndex是动态计算的, 就会出现同一张纹理在不同的Texture2DArraySample里采样的情况, 然后就会出现一条一个像素宽的小缝.实验了一下, 只采样mip0或者两层纹理的UV一样的话, 就不会出现这个问题. 所以推测是采样时相邻像素是另一层纹理的UV, 导致miplevel计算错误, 然后这条线的上像素的mip是错的, 导致跟相邻像素无法连续.目前除了把纹理的UV(Tiling)改成一样的, 还没有想到.
原创
发布博客 2020.06.26 ·
1128 阅读 ·
0 点赞 ·
2 评论

远程桌面启动Houdini

最近疫情比较严重大家都是在家办公的, 需要远程登录公司里的开发机. 但是远程桌面无法直接启动Houdini, 会报OpenGL的错这个方法也适用于一些依赖OpenGL硬件加速的程序, 如Substance等原理就是中断当前远程登录的session, 然后再启动程序, 这时候就可以使用OpenGL加速了代价就是重新登录一次, 脚本是这样的:@echo offecho.echo Remo...
原创
发布博客 2020.02.12 ·
1162 阅读 ·
1 点赞 ·
1 评论

Houdini的皮球

跟着教程做的一第一个模型attribute create节点uv flatten节点material编辑uv编辑
原创
发布博客 2019.07.20 ·
680 阅读 ·
1 点赞 ·
0 评论

角色表情Blendshape重定向方法

注: 文章是美术同事写的, 我只是放这里记录一下问题重点:需要将已有角色脸型模型的所有表情Blendshapes精确的重定向到另一个五官位置不一样,模型布线也不一样的角色上。首先因为两套角色五官不一样,所以单一通过Wrap变形器无法实现精确的重定向。其次,由于两个面部模型布线也不一样,也不能通过Blendshape直接实现变形。解决办法:(1):首先将案例脸型用晶格变形来匹配我们目标角色...
原创
发布博客 2019.01.31 ·
10617 阅读 ·
5 点赞 ·
2 评论

UE4 Shader开发的一些东西

http://blog.kiteandlightning.la/ue4-hlsl-shader-development-guide-notes-tips/Ctrl+Shift+.可以编译引擎Shader并重新载入, 但是对Plugins下的无效如果要在RenderDoc里看到Shader代码, 需要打开r.ShaderDevelopmentMode=1, r.Shaders.Optimize...
原创
发布博客 2019.01.12 ·
4400 阅读 ·
3 点赞 ·
1 评论

UE4 LightRendering

最近把HairWorks整合到了UE4 4.20, 整合的过程中发现了一些没法直接merge的代码, 主要集中在LightRendering.cpp和DeferredLightingPixelShader.usf中. 所以顺便简单读了一下代码, 把其中的一些关键字概念整理出来方便查阅理解.Uniform Buffer StructUE4使用了一些宏来辅助定义UniformBuffer中的结...
原创
发布博客 2018.11.09 ·
1360 阅读 ·
1 点赞 ·
1 评论

Android平台上的Native内存分析

文章目录背景UE4的内存统计memreportMemoryProfiler2LLMAndroid进程内存DDMSMemoryAnalyzer背景UE4游戏在Android上的进程内存占用(PSS)很让人困惑, 没有一个清晰直观的方式可以统计到每一部分的内存占用. 所以在做内存分析的过程中顺手做了一个统计工具, 可以从系统底层统计UE4在Android的所有内存分配(包括Graphics部分),...
原创
发布博客 2018.09.28 ·
9645 阅读 ·
3 点赞 ·
0 评论

Unity中使用GPU Instancing优化SkinnedMesh渲染

有这么个需求: 一堆不会动的SkinnedMesh, 通过物理模拟出死亡姿势后, 需要优化性能, 不然才10FPS首先想到的做法是转成StaticMesh. 试了一下直接超出了Unity的顶点Index数量限制, 所以放弃, 再说转换完后也不方便编辑. 另一个思路就是使用Instanced Skinned Mesh Rendering, 找到两个参考:https://github.com/Unit...
原创
发布博客 2018.07.10 ·
10547 阅读 ·
8 点赞 ·
1 评论

草的交互的几种实现

基本原理都差不多, 通过在VertexShader种更改顶点的位置实现, 各种做法的差别主要是偏移量的计算. 第一种做法: 根据顶点的UV来计算顶点偏移的权重, 因为草叶一般是沿纹理的一个轴方向分布的. 偏移的远近是根据顶点位置和玩家位置(寄存器传入)计算距离后得出. 第二种做法: 根据草的Pivot来计算旋转, 这种做法比直接拉伸顶点的效果要好一些, 不会出现草被拉长的情况. ...
原创
发布博客 2018.07.03 ·
4814 阅读 ·
5 点赞 ·
0 评论

基于Unity的编辑器开发(二): 进程间通信

共享代码进程间通信通信协议其它共享代码首先要做的, 是需要编辑器和Unity共享一部部分代码, 至少协议定义和解析我不想写两遍. 虽然有protobuf这样的工具库, 但是如果不是跨语言的话, 我觉得没必要引入另一套流程. 所以我就想能不能让一个C# dll库可以同时被Winforms的编辑器和Unity脚本引用呢? 考查了一下还是可以的:Unity的.Net默...
原创
发布博客 2018.05.09 ·
5104 阅读 ·
0 点赞 ·
1 评论

基于Unity的编辑器开发(一): GUI框架技术

需求背景技术挑战GUI框架技术Unity渲染窗口GUIDockingProperty Editor小结需求背景用Unity开发的游戏, 需要做个关卡编辑器. 如果只是内部用用, 其实直接扩展Unity就够了; 但问题是需要发布给外部的用户使用, 那么总不能把全套资源和Unity发给他们, 所以就诞生了这么个奇葩需求. 技术挑战既然用了Unit...
原创
发布博客 2018.04.26 ·
10616 阅读 ·
3 点赞 ·
4 评论

VR中物理的网络同步

参考: Networked Physics in Virtual Reality: Networking a stack of cubes with Unity and PhysX之前做VR游戏时也是尝试了几种物理的同步方案, 最近看到Oculus Blog上也分享了一些, 经验, 做个笔记.多人VR游戏中的物理交互, 有这么几个要求:玩家对物体交互不能有延迟物体能静止后稳定, 不...
原创
发布博客 2018.03.09 ·
3192 阅读 ·
0 点赞 ·
0 评论

UE4源码Build上传Perforce

UE4每次升级个版本总是要提交大量文件到Perforce, 是件很麻烦的事. 我们的引擎编译好了会连同Binaries一起上传, 这样美术和策划都可以直接使用跟程序一样的版本. 这样的话, Perforce上的引擎就需要有这些注意事项:引擎目录完全包含所有代码和引擎依赖资源引擎编译输出的dll, exe等也都需要提交, 保证策划和美术能够直接拉取引擎版本引擎编译过程中会写入的文件, 需要改成w
原创
发布博客 2017.11.03 ·
4679 阅读 ·
1 点赞 ·
0 评论

UE4衣服材质换色

游戏中衣服换色是个很普遍的需求, 除直接替换贴图外, 还有使用程序参数来控制颜色的做法. 原理就是使用一张灰白Mask图, 乘一个颜色, 替换原Diffuse贴图上的颜色 效果如下: 这种制作方式有两个缺点: 一是换色区域只能换一个固定颜色, 只有明亮不一样; 二是如果让玩家来自定义颜色, 总会出现一些亮瞎眼的配色, 影响整个游戏的画面美感. 那有没有一种方法可以同时更换多
原创
发布博客 2017.10.23 ·
9738 阅读 ·
5 点赞 ·
4 评论

《Honey Select》捏人剖析

破CSDN的文章编辑器太难用了, 传个图要累死. 以后在知乎写完再转过来: https://zhuanlan.zhihu.com/p/28471808关于游戏中的捏人系统, 很少有资料提到怎么做, 印象中只有《天涯明月刀》分享过. 前段时间关注了个VR资源分享的公众号, 经常推送HS的捏人作品, 所以才引发了我的好奇心, 决定一探究竟.HS之所以能够有这么强的定制能力, 是因为第三方MOD工具的存...
原创
发布博客 2017.08.12 ·
99381 阅读 ·
18 点赞 ·
11 评论
加载更多