C++/SDL无限滚动的最佳方法
C++/SDL Best method of infinite scrolling?
我正在制作一款2D单板滑雪游戏,我希望玩家能够无限骑行,直到他们摔倒3次。我已经有了产卵的地形,但我不知道滚动的最佳方式。
现在没有滚动,一旦玩家到达屏幕底部,他就会弹回到顶部,新的随机地形就会出现。
让背景,包括所有障碍物,从屏幕底部滚动到顶部,玩家基本上呆在同一个位置,会更好吗?还是玩家应该永远向下滚动,因为大块的新地形会产生?
最好的是你想要的游戏。
我会选择一个连续滚动的环境,在这个环境中,玩家可以稍微向前向后移动(同时以恒定的速度滚动)。
000000
0....0
0----0
0----0
0....0
000000
其中0是屏幕的边缘,-是可移动空间和。's是不可移动的空间(向上移动应该足够慢,因为滚动屏幕显示玩家不会向上移动)
你需要释放屏幕外的对象,否则随着游戏的进行,你会遇到内存问题。
至于应该滚动什么。这真的没关系。如果地面移动,玩家静止不动,或者玩家和相机在静止的背景上移动:用户总是看到一个人滑雪下山。它创造的幻觉才是最重要的。
在这种情况下,我推荐一个静止的玩家,因为如果游戏持续很长时间,你可能会遇到麻烦,并且你开始接近你存储位置的类型的边缘
相关文章:
- 在C#中处理C++指针而不使用unsafe的最佳方法
- 在C++中,将大的无符号浮点数四舍五入为整数的最佳方法是什么
- 实现无开销push_back的最佳方法是什么
- 在C++中向零方向近似的最佳方法
- 使用不同的CRT将新的C++代码与旧的(二进制)组件隔离开来的最佳方法是什么
- 检测win32服务创建和删除的最佳方法
- 在C++中样板"冷/never_inline"错误处理技术的最佳方法是什么?
- 在 c++ 中对类中的 c 字符串动态数组进行排序的最佳方法是什么?
- 将线程中的数据存储到全局容器的最佳方法?
- 将一系列整数放入类的最佳方法是什么?
- 在派生类中使用基类的私有成员变量的最佳方法
- 在 C++ 中将非指定类型作为参数传递的最佳方法?
- Qt - QVector 和模型视图 - 从列表视图获取自定义类的最佳方法是什么?
- 使用 Git 处理 C++ Visual Studio 2019 解决方案的外部依赖项源代码管理的最佳方法是什么?
- 比较两个节点坐标的最佳方法是什么?
- 在nodejs中使用本机代码的最佳方法是什么?
- 将 pybind11 绑定标记为已弃用的最佳方法
- C++:将向量传递到构造函数以创建成员变量的最佳方法?
- C++中变量混叠的最佳方法
- 读取大文件(>2GB)(文本文件包含以太网数据)并通过不同参数随机访问数据的最佳方法是什么?