scripting - GTA SA-MP 脚本:动态对象在 20,000 x 坐标后未渲染
问题描述
我创建了一张 x 坐标超过 20,000 的地图(洛斯桑托斯以东),并且我设置了我的 SetPlayerWorldBounds(playerid, 500000.00, -2000.00, 2000.00, -500000.00) 并使用了最新版本的隐身插件,但是当我到达x 坐标中超过 20,000 个对象将不再加载,我的汽车生成器脚本也不再工作。
这可能是什么原因,有没有办法解决这个问题,以便我可以进一步映射?
这是我的代码:
[https://pastebin.com/09YV34uL][1]<br><br>
我所有的对象都在函数 OnGameModeInit() 中的游戏模式内
PS 我只有不到 1,500 个动态对象
解决方案
服务器会忽略 X 或 Y 轴上超过 20000 或 -20000 的任何玩家更新,并报告边界内的最后位置,使流媒体认为您没有移动。要增加边界,您可以SetSyncBounds
在YSF中使用:
const Float:FLOAT_INFINITY = Float:0x7F800000;
SetSyncBounds(-FLOAT_INFINITY, FLOAT_INFINITY, -FLOAT_INFINITY, FLOAT_INFINITY);
这将接受任何有限坐标,这对于任何地图都应该足够了。
推荐阅读
- java - Maven pom.xml 文件中 ${} 和 {{}} 的区别
- c++ - 是否有新的 C++ 语法在成员名称后假设 .template?
- sparql - 我已尝试对植物 wikidata ID 进行以下查询,但它没有提供适当的结果并显示“查询格式错误:聚合错误”
- swift - 如何将数组转换为领域中的列表?
- html - CSS过滤器从白色到自定义颜色,属性
- ember.js - this.toggleProperty("editing") 如何在 ember.js 中工作?
- jquery - 关闭现有的 jquery modal 并通过自定义链接在新选项卡中打开另一个页面
- vue-component - 如何使用 vue-custom-element 使事件从 shadow dom 中的输入标签中冒泡?
- python - Discord.py 如何提及命令中提到的人
- pandas-groupby - dask聚合自定义方法