找回密码
 立即注册
搜索
查看: 1842|回复: 5

[其他] Vulkan 1.0规范正式发布,附送首个测试

[复制链接]
头像被屏蔽
     
发表于 2016-2-17 12:56 | 显示全部楼层 |阅读模式
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

     
发表于 2016-2-17 13:12 来自手机 | 显示全部楼层
Gl是什么环境下的,linux?
    —— from S1 Nyan (Microsoft RM-1113_1003)来自: WindowsPhone客户端
回复

使用道具 举报

头像被屏蔽
     
 楼主| 发表于 2016-2-17 13:15 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

     
发表于 2016-2-18 00:08 | 显示全部楼层
怎么连dx11都不如,驱动问题?
回复

使用道具 举报

     
发表于 2016-2-18 00:39 | 显示全部楼层
已有的显卡也会支持吗? 现在用openGL / openGL ES那些
回复

使用道具 举报

     
发表于 2016-2-18 01:37 | 显示全部楼层
星空天神 发表于 2016-2-18 00:08
怎么连dx11都不如,驱动问题?

复制一下@jun4rui 的回答:
没有,我后来跑去STEAM社区的《塔罗斯法则》看开发者和用户的对话,开发者说可以从3个方面来将API换成Vulkan,现在为了追求速度,所以他们只是简单的用Vulkan包装了一下。而Vulkan的多进程渲染和游戏引擎对Vulkan调优他们是没有做的。

所以游戏效率目前是不高。

他还提到他们的游戏引擎本身对多进程渲染支持得很好,但是目前的图形API没有采用这种模式,下一步他们会对这一项进行优化。

至于最后的将引擎替换成堆Vulkan优化,因为工作量较大,他们准备分两步走。

等这些做完再来看看,应该会比现在好

============================
engine design for Vulkan is basically consited of three major parts:\

1)
Port. Make it work as fast as possible just by wrapping current engine design around Vulkan. Avoid all pitfalls and bottlenecks. This is what we did by now and released as patch for Talos.

2)
Use Vulkan for multi-threaded rendering. Our engine is designed really well for multi-threaded rendering, but we have only our wrapper for it - calls to graphics API (like Vulkan) are not multi-threaded. Yet.
That being said, this is the next step what we'll do. And probably release that also as patch for Talos. I tried to do that with Direct3D 11 long time ago (support for its deffered contexts), but it was too much pain and too little or even no gain.  That's just one of reasons why we decided to stick with our own approach for MT renderer for that long. :/

3)
Redesign engine for Vulkan. This is the biggest step and can be split in two:

3a)
Precache all rendering states (which mostly mean materials in game) up front. This will make rendering calls much simplier and faster. So, instead of deciding at rendering time what is needed for a material to be rendered via Vulkan, do this at loading time and then when material needs to be rendered just give it to Vulkan, via one or two simple function calls.

3b)
Precache all geometry, material, textures, everything that is needed for rendering an object up front. This basically creates so called command buffer ready for Vulkan, and nothing extra needs to be set or created at render time.

3rd part of port is, obviously, the most complex one, and it'll take time to change engine design for it, step-by-step.

Hope I explained this well.
DEN
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|上海互联网违法和不良信息举报中心|网上有害信息举报专区|962110 反电信诈骗|举报电话 021-62035905|Stage1st ( 沪ICP备13020230号-1|沪公网安备 31010702007642号 )

GMT+8, 2025-8-22 22:08 , Processed in 0.054460 second(s), 7 queries , Gzip On, Redis On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表