IT Managed Launcher (Enterprise Launcher) User Guide
Install and Configure Enterprise Launcher
Protocol Commands omniverse-launcher://
Omniverse Cache Overview, Workstation Cache and Entrprise Cache
Authenticate SSO w/o interactive logins
ACLs and Permissions Management
Deploy Nucleus on Amazon EC2 and AWS github sample
Deploy an Omniverse Virtual Workstation on AWS
Deploy Nucleus on Microsoft Azure
Configuring SSL/TLS with NGINX
Integrating with SSO, Azure AD SSO and Okta SSO
Building Full Fidelity Visualization for Warehouse Digital Twins
Deployments on AWS, Azure, Google Cloud and Remote Workstation
Carbonite Programming Guide and Carbonite SDK API
USD in Kit, omni.usd API and USD Python Snippets
Streaming Extensions and Streaming Client
F8 Profiler Window and Performance Tracing
Samples to Build Your Own Connector
Farm Queue and Farm Agent
On-Demand Video List on Youtube
How to develop your extension?
Understanding Simulation in Omniverse
vinjn.com - Democratizing Visual Computing
taptap / pkg-doctor 项目开源已经过去两周,在 github 上斩获 63 个点赞。
这两周,小张修复了微信群及公司内的用户反馈的三个 bug,本次发布的 1.1 版本 包含以下三个 fix:
有趣的是,这个工具在雪球上居然也引起了讨论。
pkg-doctor 是游戏相关工具开源的第一款,不和 TDS 绑定,也不要求注册 TapTap 账号。后续工具将更关注游戏性能的分析与优化。
不赚钱,交个朋友。
vinjn.com - Democratizing Visual Computing
本书终于和大家见面了。
小张依然会记得 10 多年前,作为图形学初学者在书店遇到《GPU 精粹》三部曲时的兴奋感。彼时固定管线还在向可编程管线转变,shader 是个新鲜概念,CUDA 更是尚未诞生。NVIDIA 深知新生事物在萌芽期需要额外呵护,因此召集行业精英撰写了这三本书,将业界最先进的技术和思想进行传播。文章质量之高,使得书名中的精粹一词当之无愧,其中部分文章到了今日依然有着参考意义。
后来有幸加入 NVIDIA 并工作了八年,见证了 RTX 这个疯狂的想法从萌芽、质疑到问世。全球各地工程师、研究员的智慧与协作使得 RTX ON 成为一种信仰。基于同样的逻辑,NVIDIA 也召集全球的大牛们撰写出了《光线追踪精粹》。
现在可能是开始学习光线追踪最好的时间点。经过 NVIDIA 两代显卡的普及,消费者开始接受并拥抱光追。桌面端的竞争对手们纷纷认可这个方向,甚至手机端也有厂商选择跟进。我在两年前决定翻译本书,也是希望能在合适的时间点对国内的图形行业做一些微小的贡献。
我在光线追踪领域涉猎广但是不深,有幸的是在本书的初稿阶段得到了众多网友的帮助。在此由衷地感谢参与翻译的伙伴们付出的劳动,在初稿之后我们又进行了多轮交叉审稿,最终才得以成稿。以下是本次参与翻译的小伙伴(按 github 账号首字母):AltmIce 张鹏飞、AmesingFlank 卢敦凡、Angiewei 魏安琪、bluesummer 王晓波、butterfly0923 张帅、ch3coohlink、chiantiYZY 颜卓仪、Cielrin、FaithZL 朱翎、FantasyVR 禹鹏、gigichq、haiyuem 麻海玥、jingjingshenye、lifangjie 李方杰、LIJIE 李杰、liyongnupt 李勇、Nicholas10128 金鑫、papalqi 黄琦、qingqhua 华清沁、RazorYhang 杨宇辰、renyuhuiharrison 任宇晖、rockyvon、skyfeiyun 董东、slongle 邓俊辰、tankijong 张天毅、tavechiang 蒋大为、vcl-pku 马雷、wubochang 吴博昌、XBOOS、YanFeiGao 刘龙腾、yuxing5555、zhan2586 张闻宇、zheng95z 曾峥、zzk224 钟凯。
要特别感谢 papalqi 黄琦在整个翻译前中后期的大力支持,他负责了与初稿译者们的沟通以及前中期进度的追踪。也要一并感谢 butterfly0923 张帅与 AltmIce 张鹏飞,他们带来了高质量的初稿并替我分担了后期繁重的审阅工作。此外要感谢本书编辑喻永光的支持和督(cui)促(gao),这是我俩的第二次合作,非常期待下一次。
感谢读者们的耐心等待。本书涵盖的内容之广,话题之深远远超过我立项时的估计,即便反复审稿也不免会有错误之处。也希望大家能多多谅解,遇到 bug 可以发我邮件 vinjn@qq.com。
最后要感谢妻子 M 和女儿 BLB 的支持,你们的微笑给了我深夜肝书的动力。
vinjn.com - Democratizing Visual Computing
在 NVIDIA 做性能分析的时候,接触的 PC 大作基本很多都是 10G 以上的,因此也从没有想过包体大小会是个重要的优化项目。来到心动网络后,与自研的项目进行过合作,也和 TapTap 上的独家游戏团队有过交流,这才意识到包体大小对于手游的重要性,总结下有两点:
在 10 多年的工作历程中小张遇到过各种难缠问题,每次小张都会将问题的解决过程拆成三步
对于优化手游包体的大小这个问题,最难的是第一步。你可能会问了,对于拥有源代码的自研项目,为什么收集数据会是个难点呢?这是因为心动是一家非主流的游戏公司,它拥有 TapTap 这个互联网平台。因此当我在帮助内部项目组,就在思考对外发布的可行性。一个工具,能够解决自身的痛点固然是好事,但是如果能帮助到 TapTap 上的游戏,甚至没有在 TapTap 上发布的游戏,那么这件事情的意义就会大更多。
在这个假设下,我开发的工具需要有无敌的适应性,只要有 apk 文件,不论是 Unity 还是 Unreal 游戏,不论是否有游戏的源代码都应该支持。
这个软件我取名为 pkg-doctor / 包体医生,对于游戏包体它就像个医生,望闻问切、抽血CT,一番操作后给出报告。
使用方法也非常简单粗暴
pkg-doctor.exe /path/to/game.apk
对于 Unity 项目,我使用 Perfare 的 Asset Studio 来解决收集资源文件名、尺寸、格式等数据的需求。以下是它的用户界面,能看到文件名、类型、尺寸、内容预览等信息,可以满足第一步的需求。
经过我修改后的 Asset Studio 有能力读取一个 Unity 游戏的 apk 文件,输出包含资产名称、类型、尺寸、预览等信息的 CSV 文件,供下一步使用。下图是由 Unity 官方范例产生的 CSV 文件:
Name,Container,Type,Dimension,Format,Size,FileName,Hash,OriginalFile
AreaTex,,Texture2D,160x560,RGB24,268948,,b86fcc9bb386113bd09eaf566973b0e0,globalgamemanagers.assets
Arial,,Font,,,286,,,Resources/default
box,,Texture2D,12x12,ARGB4444,400,,fad9a48b7bec21aaa79672dee0cbcaa9,Resources/default
brush_low,,Mesh,vtx:456 idx:1911 uv:912 n:1824,,4260,,e9d2f24e17bc510d2b627520ab149e5e,sharedassets0.assets
button,,Texture2D,12x12,ARGB4444,404,,9999ba253411b30f30f33fb360dab1e3,Resources/default
button active,,Texture2D,12x12,RGBA32,700,,69d58ba7c15aedb7bec58d84826293aa,Resources/default
button hover,,Texture2D,12x12,ARGB4444,408,,39a14ee6b2de862a7627e85f6436be22,Resources/default
button on,,Texture2D,12x12,ARGB4444,408,,d1cdbbe0c16aff9b693d261b66e1d630,Resources/default
button on hover,,Texture2D,12x12,ARGB4444,412,,fe15605fca2f0fd5d3f56ae013b031ec,Resources/default
Capsule,,Mesh,vtx:550 idx:2496 uv:1100 n:1650,,36196,,eb6e9adcd5af6b8c90bdced7c02055fa,Resources/default
Combined Mesh (root: scene) 2,,Mesh,vtx:30360 idx:85401 uv:60720 n:121440,,172972,Mesh/\Combined_Mesh__root__scene__2_802.obj,,level0
第二步和第三步都在 Python 端 进行,这两部分的改动频率较高,随着我经手的游戏变多,新的优化方向会浮出水面;来自开发者的反馈也令我改进数据的展示方式。
来看一款用来测试工具的项目,首先看下包体医生报告中的 包体概览
部分:
从这里能看到这款游戏的包体重头戏是 贴图 / Texture,而重中之重是未经压缩的图片;此外还有大量不可忽视的重复入包资产。
知道这些信息后,我们可以查看 重复入包 TOP 榜单
找到出问题的资产名称、浪费的包体尺寸、预览、prefab 名称等等。
然后是 未压缩贴图 TOP 榜
,也是体贴地给出了资产名称、浪费的包体尺寸、预览、prefab 名称等等。
对于这个测试项目,包体医生现有的功能便可以大幅地降低包体尺寸。
下一阶段优先级最高的任务是增加对 Unreal 项目的支持,而由于我将解决问题的过程分成了三步,第 2 步和第 3 步几乎是可以复用的。
希望这个工具(以后之后会开源的一系列工具)能够帮助广大的开发者更好地制作游戏,因此我也建了个微信群来进行客服工作,欢迎加入。
vinjn.com - Democratizing Visual Computing