首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何确定等距视图闪存游戏中的抽签顺序?

如何确定等距视图闪存游戏中的抽签顺序?
EN

Game Development用户
提问于 2012-03-21 14:18:50
回答 3查看 3K关注 0票数 12

这是一个闪光灯游戏,具有等距视图。我需要知道如何排序对象,以便在绘图时不需要z缓冲区检查。这似乎很容易,但是还有另一个限制,场景可以有10,000+对象,所以算法需要在小于O(n^2)的范围内运行。所有的物体都是矩形盒子,场景中有3-4个物体在移动.做这件事最好的方法是什么?

更新

在每个瓷砖中,只有对象(我的意思是对象不能相互叠加)。我们访问的对象和对象都有自己的位置。

UPDATE2

见以下数字:

首先要画一个蓝色的物体,然后是绿色,然后是红色。在第二种情况下,你必须以相反的顺序画出它们。你需要先画红色,然后画绿色,最后画蓝色物体。正如你所看到的,蓝色和红色物体的位置没有差别,它们与摄像机的距离不同等等。但是,由于它们相对于绿色框的位置,您需要在两个图像之间更改它们的绘制顺序。这就是让这个问题变得一团糟的原因。

边注:由于所有的物体都是矩形棱镜,因此数学证明至少有一个抽签顺序可以满足问题的需要。

EN

回答 3

Game Development用户

发布于 2012-03-21 17:21:01

我对这个问题没有特别的了解,但我有一个想法。

首先,将每个单元格标记为“未绘制”。(或者,等效地,使用数组来表示每个单元格“近-远”线上最接近的“绘制”物的位置,或一组等等)然后,对于每个单元格(我可能会按照kaoD描述的顺序检查它们):检查该单元格是否已绘制;如果未绘制并包含对象,则检查将被该对象遮挡的每个单元格是否已绘制,如果不递归绘制,则检查是否绘制该单元格所包含的对象;如果有必要,将该单元格和其对象占用的任何单元格标记为“绘制”。

我假设您可以快速地将一个单元格映射到其中的对象(如果有的话)。我相信这是O(n)时间,尽管它最终可能会构建一个大堆栈(如果您担心堆栈空间不足,您可能希望将它变成一个链接列表)。

如果你真的需要一个列表,你可以附加到一个列表,而不是绘图。我怀疑从一份排序最多的名单开始是没有用的。

票数 2
EN

Game Development用户

发布于 2012-03-21 21:48:42

我会使用画家算法,出租车距离离相机最远的单元,先画离摄像机最近的,然后向外移动。

编辑:除非您可以单独绘制每个单元格的内容,否则这是行不通的。

票数 1
EN

Game Development用户

发布于 2012-03-22 16:42:17

是什么让你相信这是“数学证明,至少有一个抽签命令,以满足问题的需要”?下面是一个不能依赖z排序对象的简单反例:

票数 1
EN
页面原文内容由Game Development提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://gamedev.stackexchange.com/questions/25982

复制
相关文章
详解,SEO刷排名,为什么你不能做?
习惯于日常SEO操作:关键词、布局、内容、内外连接等等,习惯于每天忙忙碌碌,等待几个月之后的开花结果。
蝙蝠侠IT
2021/07/26
8150
详解,SEO刷排名,为什么你不能做?
区块链到底能做什么?还问这个问题你就out了
在近期区块链大本营(blockchain_camp)举办的以“区块链技术与行业应用落地”为主题的CSDN区块链技术沙龙上,云象区块链创始人黄步添博士分享当前区块链技术及应用趋势。
区块链大本营
2018/09/21
6430
区块链到底能做什么?还问这个问题你就out了
为什么MongoDB敢说“做以前你从未能做的事”
大数据文摘作品,欢迎个人转发朋友圈;其他机构、自媒体转载,务必后台留言,申请授权。 作者| Shuvayan Das 翻译| 张龙吟,卞铮 校对| 康欣,土家 编辑| Ivy 小编注:在Mongo
大数据文摘
2018/05/21
7200
Python还能做这个?真的好棒棒耶!
專 欄 ❈爱撒谎的男孩,Python中文社区专栏作者 博客:https://chenjiabing666.github.io ❈ 准备 好吧,其实我想说的是如何用Python制作电子书,使用的是python的pdfkit这个库,pdfkit是 wkhtmltopdf 的Python封装包,因此在安装这个之前要安装wkhtmltopdf 安装wkhtmltopdf sudo apt-get install wkhtmltopdf (ubantu下,不过这里安装的时候可能对应的版本不同,会出现错误,如果不行的
Python中文社区
2018/01/31
1.4K0
Python还能做这个?真的好棒棒耶!
Elasticsearch 为什么能做到快速检索?
最近接触的几个项目都使用到了 Elasticsearch (以下简称 ES ) 来存储数据和对数据进行搜索分析,就对 ES 进行了一些学习。本文整理自我自己的一次技术分享。
kubernetes中文社区
2021/12/21
1.1K0
Elasticsearch 为什么能做到快速检索?
令人头秃的js隐式转换面试题,你能做对吗
你有没有在面试中遇到特别奇葩的js隐形转换的面试题,第一反应是怎么会是这样呢?难以自信,js到底是怎么去计算得到结果,你是否有深入去了解其原理呢?下面将深入讲解其实现原理。
loveX001
2022/10/05
5050
PDF如何转换成PPT,这个方法你知道吗
PDF是我们在办公中会经常遇到的,但是想要编辑和观看的话是需要将PDF转换成PPT的,那么PDF如何转换成PPT?下面就来给大家介绍,想知道的话就来看看吧。
高效办公
2019/06/20
7520
怎样把JPG转换成PDF?这个方法你知道吗
在网络发展的道路上,图片是突破文字的束缚的另一种格式,发展至今,图片也变得有更多的可能,那么怎么把JPG转换成PDF?今天就分享给你们简单的两种方法
高效办公
2019/06/25
1.4K0
怎样把JPG转换成PDF?这个方法你知道吗
学了C加加,你能做什么?
如今学习编程的同学越来越多,也有很多人想转行去学习这个,但是大多数人学习这个都是看到工资高,自己喜不喜欢,学了能做什么都不知道,今天就给大家分享一下,学了C/C++,你们能往哪些方向发展,希望能对你们以后的发展方向有帮助。 C++应用领域 1.游戏 C++的效率是一个很重要的原因。 2.科学计算 在科学计算领域,FORTRAN是使用最多的语言之一。但是近年来,C++凭借先进的数值计算库、泛型编程等优势在这一领域也应用颇多。 3.网络软件 C++拥有很多成熟的用于网络通信的库,其中最具有代表性的是
企鹅号小编
2018/01/31
1K0
学了C加加,你能做什么?
私域流量为什么SEO才能做好
近期圈内最流行的一个词汇,恐怕就是“私域流量”,在这里相信很多人都是知其然不知其所以然,今天,冬镜就和大家聊聊什么是私域流量?为什么私域流量要SEO才能做好?
小狐狸说事
2022/11/17
4320
私域流量为什么SEO才能做好
图片文字如何转换成Word,这个简单方法你得会
图片文字如何转换成Word?这是很多人在工作中都会遇到的问题,当你看到一个很好看的图片上面有你喜欢的文字,想把上面的文字保存下来,但是如果一个一个把字打出来那就太累了,今天呢就来给大家分享一个超级简单的方法,让你轻松搞定图片文字转Word,一起来看看吧。
高效办公
2019/06/11
11.2K0
图片文字如何转换成Word,这个简单方法你得会
为什么会有这个分类?
自己之前是没有想过太多的,有第三方的工具就直接使用,但是还是没有想到,当有一天,工具不在适用该怎么办?
用户1134788
2022/05/09
2140
这个bootloader适合你
bootloader 在正式的产品中是一个不可或缺的功能,而NXP针对kinetis系列开发的通用bootloader是一个不错的选择,目录结构
用户1605515
2019/06/03
7970
电平转换实现简述_为什么要进行电平转换
在设计电路时,很多情况下会出现电平不匹配的情况,最常用的方式就是增加电平转换芯片。那自然就会想到其实现思想源自于哪?如果用分离器件搭,如何能实现? 下图是SN74ALVC164245的逻辑框图,包含与门和反相器,与门主要实现使能和方向控制,反向器用来实现信号传输。
全栈程序员站长
2022/09/22
6370
电平转换实现简述_为什么要进行电平转换
为什么你觉得Matplotlib用起来很困难?因为你还没看过这个思维导图
Matplotlib是一个流行的Python库,可以很容易地用于创建数据可视化。然而,设置数据、参数、图形和绘图在每次执行新项目时都可能变得非常混乱和繁琐。而且由于应用不同,我们不知道选择哪一个图例,比如直方图,饼状图,曲线图等等。这里有一个很棒的思维导图,可以帮助您为工作选择正确的可视化效果:
HuangWeiAI
2019/11/28
1.4K0
Elasticsearch 为什么能做到快速检索?— 倒排索引的秘密
最近接触的几个项目都使用到了 Elasticsearch (以下简称 ES ) 来存储数据和对数据进行搜索分析,就对 ES 进行了一些学习。本文整理自我自己的一次技术分享。
架构师修炼
2021/11/12
4660
Elasticsearch 为什么能做到快速检索?— 倒排索引的秘密
为什么你的python版本一团糟?因为少了这个操作!
在这里我要说明下,对于初学者来说,版本间的语法差异其实并不大。现在刚开始学 python 的人,放心大胆地用最新版本即可。业内所诟病的,主要是针对代码上的不兼容。
一墨编程学习
2018/12/24
9810
为什么你的Python包老是装不上?收下这个网站就对了
Python以第三方包丰富而著称,你想要的功能都能通过pip命令安装,避免什么都要自己重新造轮子尬尴。
数据森麟
2019/12/23
1.9K0
为什么你的Python包老是装不上?收下这个网站就对了
为什么你的python版本一团糟?因为少了这个操作
在这里我要说明下,对于初学者来说,版本间的语法差异其实并不大。现在刚开始学 Python 的人,放心大胆地用最新版本即可。业内所诟病的,主要是针对代码上的不兼容。
Crossin先生
2018/09/30
1.9K0
为什么你的python版本一团糟?因为少了这个操作
点击加载更多

相似问题

为什么我不能做这个更新?

21

为什么这个多处理代码比串行代码慢?你怎么才能做得更好?

13

“为什么你看到这个菜单”

12

你会把这种TypeScript不能做的推断称为什么?

10

为什么LinearSVC不能做这个简单的分类?

12
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文