TheTechBehindDx11UnrealEngine"Samaritan"Demo

Android存储空间不足下,APP出现奔溃等情况 版权声明:本文为博主原创文章,未经博主允许不得转载。 1. 问题起因     实时录制视频,使用getExternalCacheDir()函数返回的路径作为文件缓存区 2. 问题产生     系统在空间不足的情况下第一清除getExternalCacheDir和getCache文件下的缓存,导致正在录制的视频出现Error。 3. 解决方案     第一 阅读详情

 

 

link:

http://www.nvidia.com/content/PDF/GDC2011/Epic.pdf

 

 

 


 

deferred shading

轻描淡写的提了一下,实在是在业界已经普及了,epic大肆宣扬就没意思了,只是更新下大家的knowledge base,unreal engine 3现在也defer了。

 

 


 

short hair

 

使用camera aligned triangle strip, 然后配上贴图,很类似grass的渲染。

重点在alias的处理,在单纯的1x buffer怎么做都是达不到高质量:

alpha test:alis

alpha blend:sort, fogging, dof

alpha to coverage:problems with many layers

最后选择是在4xmsaa buffer上做alphatest,然后resolve,可以说是super sample anti alias

 


 

per fragment AA

MSAA会出现左边白边的问题,原因是边缘处depth远近不一样,而必须有一个值。

unreal使用stencil把这个部分标出来,然后先做perpixel shading,这个过程stencil被全写过的部分就可以无视,被半写过部分就是可能白边的地方,再做一次perfragment shading就好了。

的确是比较不错地办法。

 


 

subsurface scattering

效果很棒,牵涉的论文读起来要费挺多的事情,pdf里面martin也就淡淡的一句,screenspace搜集lighting contribution,随机的搜集周围16个sample。

 

 

 


 

Reflection

 

使用billboard+raytrace的方式来完成。

平面反射,也就是把camera相对于反射面翻转,然后render场景的方法只能适合水或者单纯的平地面,对于复杂形状不行。

unreal的方式非常针对夜晚情形,只反射一些亮的东西,把这些东西做成billboard在反射中使用。

使用raytrace来sample反射的内容,由于是billboard,所以计算还是相对轻量级。

 

至于各种奇怪的反射,拉长条的,blurry的,就在这个算法下把reflection ray稍加变动就可以。

 

reflection shadow, epic做的真是够纠结的,

static是用一个offline生成的存在volume texture里的distance field

dynamic是用传统planar reflection的方法用反射camera画depth,根据depth的每一个texel来画quad产生final mask。

final mask与billboard一起作用营造出有shadow的反射。

这里的消耗感觉有点惊人。

 

 


 

Bokeh

 

估计这届gdc之后最明显普及的一个东东就是这个了,背景中亮片的效果。

 

基本算法还是brightpass检测,在亮的pixel上画quad或者类似的一些形状。

epic的dof solution还包括近景和远景的blur,所以使用了3个layer来区分,避免出现artifact。

 

由于这个效果是不需要准确的效果,所以low resolution的方案是肯定要使用的了。

 


 

其他,

文中提到一个能量守恒(energy preserving),就是对光照模型做一些矫正,保证radiance和irradiance能量上一致,这。。。玩家的火轮眼真的有能力识别这个么?

 

screen space subsurface scattering里面reference有点多,需要慢慢看一下,但是由于这个和手头工作相去有点远,所以优先级要降低了。

 

 


 

其实看下,这个demo里面的技术也没有太多特别的,但是拿出来就是震撼。

再次诠释了游戏发展至今绝不是一条腿可以跑的,tech,art,design三者都强的才是王者。

carmack那个单纯靠技术和单人能力就能杀出一条血路的时代已经过去了。

 

反射的部分是我的最爱,的确很不错。

2025 华为OD机试真题e卷 C语言 实现【竖直四子棋】 竖直四子棋的棋盘是竖立起来的,双方轮流选择棋盘的一列下子,棋子因重力落到棋盘底部或者其他棋子之上,当一列的棋子放满时,无法再在这列上下子。 阅读详情

相关推荐

基于继电器与三极管的自动水泵控制器DIY:从电路原理到PCB制作实战

继电器作为一种利用电磁原理实现电路通断控制的电气开关,其核心价值在于通过小电流信号控制大电流负载,实现强弱电之间的安全隔离。在自动化控制领域,继电器常与三极管等半导体器件配合,构成驱动电路,将微弱的传感器信号放大,从而可靠地控制电机、水泵等执行机构。这种组合技术广泛应用于工业控制、智能家居及各类电子DIY项目中,例如实现水箱水位的自动检测与控制。本文将以一个典型的自动水泵控制器项目为例,深入剖析如何利用继电器与三极管搭建水位检测与驱动电路,并详细讲解从电路设计、PCB自制(热转印法)到系统调试的完整工程实践

weixin_31774841的博客 347

[运营期间开发]卡顿处理--GPUView

开发期间的卡顿处理的方法比较多,可以打log等方法。 GPUView 在运营期间就是GPUView就是逆天的给力存在。 GPUView早先是一个微软实习生开发的东东(好逆天的实习生),以单独的方式来发布,后来集成到windows sdk中来,本blog上面这里有一些记录。 而且在后续GPUView依旧保持着发展,功能也越发好用了,连intel的gpa也在底层使用这个机制。 GPUView

安柏霖的专栏 7835

机器学习模型系列:随机森林的原理和示例介绍

让我们总结一下与其他监督式机器学习模型相比,随机森林的优缺点。优点在许多真实数据集上已知能提供高度准确的模型。通过结合多个决策树的预测,可以捕捉数据集中的复杂交互和模式。通过自动选择相关特征,可以有效处理高维数据集。与单个决策树相比,不容易过拟合。自助采样和每个节点的随机特征选择有助于减少过拟合并改善泛化能力。可以处理包括数值和分类特征在内的异构数据类型。可以处理缺失值而不需要填充。提供特征重要性的度量。集成中的树可以并行训练,因为每个决策树可以独立构建。模型的泛化误差具有理论上的界限。

数智笔记 1万+

显卡参数指标

http://www.kludx.com/browse_video_cards_detailed.php怕网站消失,copy之:ATI  DirectX OpenGLName DirectXPixel ShaderVertex ShaderPrimitive CountMax. Vertex IndexActive LightsTexture WidthMax Point SizeVS ConstVS Inst. ExecutedVS 3.0 Inst. SlotsPS Inst. ExecutedPS 3

安柏霖的专栏 5604

[系统安全] 十一.那些年的熊猫烧香及PE病毒行为机理分析

如果你想成为一名逆向分析或恶意代码检测工程师,或者对系统安全非常感兴趣,就必须要认真分析一些恶意样本。熊猫烧香病毒就是一款非常具有代表性的病毒,当年造成了非常大的影响,并且也有一定技术手段。本文将详细讲解熊猫烧香的行为机理,并通过软件对其功能行为进行分析,这将有助于我们学习逆向分析和反病毒工作。后续作者还将对其进行逆向调试,以及WannaCry勒索蠕虫、各种恶意样本及木马的分析。基础性文章,希望您喜欢!同时,本文部分实验参考姜晔老师的视频分析,真的非常佩服和值得去学习的一位老师。技术路上哪有享乐,为了提升安

杨秀璋的专栏 7327

LeRobot 入门教程(十三)集成自定义的机器人、相机等硬件

本文详细介绍了如何将自定义机器人集成到LeRobot生态系统的完整流程。主要内容包括:1)硬件准备与通信接口选择;2)继承Robot基类实现标准接口;3)定义观察特征和动作特征;4)处理设备连接/断开逻辑;5)支持校准与配置;6)实现核心传感器读取和动作发送功能;7)可选遥操作器集成;8)遵循4项规范打包自定义设备(命名前缀、类名对应、文件结构、模块暴露);9)提供了完整实现示例。通过该方案,开发者可让自定义机器人兼容LeRobot的数据采集、控制管道和策略训练等全套工具链。

2506_90492529的博客 1902

link time code generation

<br />http://msdn.microsoft.com/en-us/magazine/cc301698.aspx<br />在link时刻做的代码优化。<br />平时接触的编译器优化基本是compile time优化,比如inline这样的工作。<br />其限制就是可以做的东西就是在一个编译单元里,一旦调用的一个函数在另外一个编译单元,就只有跳转着一个选择,至于跳转的细节就是在link time来决定了。<br /> <br />link time 优化就是在拿到所有编译单元结果了之后,在全局做

安柏霖的专栏 5289

软件产品国际化:前后端及App多语言版本解决方案(超详细实现过程)

多语言版本解决方案是应对全球化趋势的关键策略,它通过构建灵活且可扩展的架构,支持软件产品在不同语言和文化环境下的顺畅运行与展示。此方案涵盖了前端多语言界面实现、后端多语言数据处理及大数据环境下的多语言支持等多个层面,确保公司能够高效地推出适应全球用户多样化需求的软件产品。在前端多语言界面实现方面,解决方案采用了国际化与本地化的结合方法。国际化过程确保软件的功能和代码设计能够处理多种语言和文化习惯,而本地化则针对特定地区进行界面和内容的调整。

大模型大数据攻城狮的专栏 2754

Designing Fast Cross-Platform SIMD Vector Libraries

是对这篇文章的笔记:http://www.gamasutra.com/view/feature/4248/designing_fast_crossplatform_simd_.php?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed:+GamasutraFeatureArticles+(Gamasutra+Feature+Artic

安柏霖的专栏 3253

【YoloV12改进策略】基于流形约束超连接(mHC)增强YoloV12全局特征提取能力_独家复现_梁文峰署名论文

论文标题:流形约束超连接 (Manifold-Constrained Hyper-Connections, mHC)核心问题:针对超连接 (Hyper-Connections, HC) 扩展残差流宽度时破坏恒等映射、引发训练不稳定性和高内存开销的问题,提出一种约束性框架。目标:恢复残差连接的稳定性与可扩展性,同时保持HC的性能增益。基准模型:基于DeepSeek-V3的MoE架构,进行了3B、9B、27B模型的实验验证。论文图示mHC 是一个通用的HC扩展框架。

m0_47867638的博客 1354

第二篇:APS智能排产实战:OR-Tools与coptpy从入门到案例

专注于具体的技术实现,包括 OR-Tools 和 coptpy 的详细使用指南、建模技巧、日志解读,以及一个完整的两阶段生产排程案例。适合准备动手开发 APS 系统的工程师和研究者。

算法工程师 454

VideoMemory, SystemMemory And AGPMemory

原帖在下文,笔记:DxFlag:像D3DUSAGE_DYNAMIC, D3DPOOL_DEFAULT, D3DPOOL_MANAGED, D3DPOOL_SYSTEMMEM这些都是给driver一些提示说我们想这样用这些资源(静态的,动态的。。。),到底这些资源会被如何管理还是driver来说了算。一些倾向是:D3DPOOL_DEFAULT:会根据usage来放置资源AGP memory是bios来决定分配的,这里有一个查看器,http://developer.nvidia.com/object/agp_m

安柏霖的专栏 3107

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

使用directx11实现高质量图形效果@CGDC4

High Quality Graphic Effects using DX11@CGDC4 说实话这个文章是让我感觉到nv诚意的一个文章,巨多的到中国来做presentation的都是把gdc上的文章再讲一遍,让人感到很失望很不爽,我觉得这是很没诚意的表现(组织者和演讲者)。

安柏霖的专栏 3084

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

Nvidia Maxwell Architecture

http://en.wikipedia.org/wiki/Maxwell_(microarchitecture) http://international.download.nvidia.com/geforce-com/international/pdfs/GeForce_GTX_980_Whitepaper_FINAL.PDF 前段时间做性能测试,同样场景gts450,1680x1050分辨率

安柏霖的专栏 2967

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

固态硬盘

使用固态硬盘工作也有多半年了,速度提升n倍,可以说是最具性价比的硬件升级,一般来说60g的也就够了,作为系统盘,放编程工具和项目,win7 64位启动时间15秒左右。当然如果项目很大,装的软件多就用120g也很好。编程工作可以持续集中注意力,之前用hdd的时候就是一编译就要很长时

安柏霖的专栏 2915

smooth step

smoothstep是一个cubic hermite interpolation.

安柏霖的专栏 2835

Halo Reach Effects Tech

link:http://cmpmedia.vo.llnwd.net/o1/vault/gdc2011/slides/Chris_Tchou_Programming_Halo_Reach_Effects.pptx halo reach的一些特效技术: particles 首先提到bungie老的particle系统基于一个很大的uber shader,uber shader的一个坏处也体现的比较好,

安柏霖的专栏 2376

VirtualMemory重温

呃,以前考过好几遍了,但是发现和具体问题结合起来仍旧会有认识不好的地方。在总结下吧。 总结时候就用ps3(其实就是linux,涉及到权限说一声,我赶紧删除,囧)来做实际结合(唔,不敢保证都正确,对照书,文档和自己理解来吧) virtual memory本质上属于一种抽象表示,让system可以脱离开硬件的限制(比如memory大小)来工作。所以cpu与之交互的是virtual

安柏霖的专栏 2279

Lighting you up in Battlefield 3

link:http://publications.dice.se/attachments/GDC11_LightingYouUpInBattlefield3.pptx由超级hardcore的Dice带来的LightingYouUpInBattleField3ThePast首先介绍了dice之前项目的一些技术点:BattleFieldBadCompany:(2008)Frostbite 1;Forward-renderingNo streamingHemispherical sky/ground lig

安柏霖的专栏 2272

D3DMatrix Major

row major,内存上是一行行的访问,第一行走完再走下一行。column major反之。-----------------------------------------------------------------------------------

安柏霖的专栏 2266

AMD 的下一代内存技术--HBM

AMD在硬件技术上再做一次创新,来了一个叫做HBM(high bandwidth memory)的技术 结构上会使用stacked memory 看起来有点像硬盘的raid。 然后使用非常快速的连接器连接到cpu/gpu,在速度上几乎等同于on-chip integrated ram。 然后在能耗上也大幅度降低。 整体性能完爆GDDR5:not bad

安柏霖的专栏 2240

LionheadAtGDC2011

http://www.gdcvault.com/play/1014350/Mega-Meshes-Modeling-Rendering-and全名太长了,像一条微博那么长。lionhead studio开发了fable和black&white系列的强力工作室。介绍他们给《milo&kate》开发的游戏(milo真大牌,有人专门给开发游戏)

安柏霖的专栏 2216

视频隐私脱敏工程化:CSRT/KCF追踪算法在本地推理中的实现与边界

在短视频内容合规审查中,动态遮挡(Dynamic Masking)是高频且高耗时的环节。传统手动关键帧打码不仅效率低下,且在目标快速移动或遮挡时极易出现遮罩漂移。本文从计算机视觉工程角度,解析基于CSRT与KCF算法的目标追踪方案在视频隐私处理中的技术路径、性能权衡及落地实践。

Mysssone的博客 249

【算法拾光】链表 哈希表|K个一组翻转链表 + 两数之和

K个一组翻转链表需分段反转,借助哑节点与前驱指针维护连接,避免断链;两数之和利用哈希表实现O(1)查找,空间换时间,高效定位目标组合。前者考察链表指针操作,后者聚焦映射关系构建,均为面试高频题。

wuqingyigexiaoba的博客 320

把 KV Cache 压到 FP4:BitDecoding-FP4 的算法-系统协同设计复盘

长上下文推理卡在KV Cache的显存与带宽上,而现有FP4方案要么精度崩、要么速度废。这篇文章复盘BitDecoding-FP4如何用三个算法补丁加一个系统重构,在B300上把服务吞吐提升2.4–3.0倍,精度几乎不掉。

helloagent的博客 193
上一篇: High Performance Post-Processing
下一篇: LionheadAtGDC2011
安柏霖
安柏霖 领域专家: 学术研究与理论基础技术领域 领域专家: 学术研究与理论基础技术领域
博客等级 码龄20年 1788粉丝 891原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值