如何计算弧线弹道的落地位置

news/2024/7/8 12:04:18 标签: Physics, Script, Audio

1)如何计算弧线弹道的落地位置
2)Unity 2021 IL2CPP下使用Protobuf-net序列化报异常
3)编译问题,用Mono可以,但用IL2CPP就报错
4)Wwise的Bank在安卓上LoadBank之后,播放没有声音


这是第393篇UWA技术知识分享的推送,精选了UWA社区的热门话题,涵盖了UWA问答、社区帖子等技术知识点,助力大家更全面地掌握和学习。

Physics

Q:请教一个问题,现在我有一个可以打出弧线弹道的迫击炮,可以放到场景里任何位置,怎么能算出可以打到的区域和打不到的区域?要考虑场景内建筑物的遮挡问题。

然后,旋转一周的话以多少角度来计算呢?

A1:碰撞不只有地面的碰撞,所以高度图也不能解决。自己模拟弹道轨迹计算,然后进行分段逐个探测就好。要真说GPU来解决,可能更多是基于视觉表现上的,而且会把问题变得更加复杂,只是提升下数量非常多的时候的性能。

可以参考Niagara,使用深度图、SDF、或者新一代GPU的物理探测方案来做支持。

感谢听风辨雨@UWA问答社区提供了回答

A2:笨方法就是先旋转一周一层循环,再从0到90度仰角再一层循环,每个发射角用抛物线公式计算虚拟炮弹的运动轨迹,轨迹连线,中间有物理的射线检测判断有没有障碍,最后生成大量的抛物线的落点画出来。

感觉上SphereCast比射线检测更好,这个用Compute Shader算应该很合适。但是建筑物碰撞部分怎么在CS里面处理?是不是把建筑物的碰撞先预处理成体素还不确定。

感谢jump晃悠@UWA问答社区提供了回答

A3:微积分基础思想就能解决,小范围内以直代曲,也就是分段SphereCast即可。如果要更精确,就不要用均匀分段,而是根据曲率不同分段长度不同,曲率就是抛物线函数的二次导数。

另外,每个角度算一个曲线就好,一般不需要提前把所有可能都算出来。

感谢偶尔不帅@UWA问答社区提供了回答


Script

Q:请问有遇到这个问题的嘛,在安卓上序列化报以下异常:

NotSupportedException: D:/Unity2021/Unity 2021.3.4f1/Editor/Data/il2cpp/libil2cpp/icalls/mscorlib/System.Reflection/RuntimeParameterInfo.cpp(23) : Unsupported internal call for IL2CPP:RuntimeParameterInfo::GetTypeModifiers - "This icall is not supported by il2cpp."

A:.NET功能可能不受IL2CPP支持,试着升级一下Unity或者绕过你要实现的功能。

感谢萧小俊@UWA问答社区提供了回答


Script

Q:请教个问题,使用IL2Cpp就报错,用Mono编译就可以过。

A:IL2CPP里代码太多也会这样,如果开了Script Debugging关掉试试。若还没解决,那把这里调高看看(如下图),让代码少一点。

不过调高了有可能有别的报错,如果Strip了需要用到的东西,还得自己加到link.xml里。

感谢deviljz@UWA问答社区提供了回答


Audio

Q:请教个问题,Wwise的Bank在安卓上LoadBank之后,播放没有声音,请问有人遇到过吗?

A:连Wwise的Profiler,看下是Bank加载失败了,还是播放失败了,或者根本就没有Listener,都有可能的,Profiler都会告诉你。

感谢断弦的旋律@UWA问答社区提供了回答

封面图来源于网络


今天的分享就到这里。生有涯而知无涯,在漫漫的开发周期中,我们遇到的问题只是冰山一角,UWA社区愿伴你同行,一起探索分享。欢迎更多的开发者加入UWA社区。

UWA官网:www.uwa4d.com
UWA社区:community.uwa4d.com

 


http://www.niftyadmin.cn/n/5537170.html

相关文章

上海市计算机学会竞赛平台2023年2月月赛丙组平分数字(一)

题目描述 给定 𝑛n 个整数:𝑎1,𝑎2,⋯ ,𝑎𝑛a1​,a2​,⋯,an​,请判定能否将它们分成两个部分(不得丢弃任何数字),每部分的数字之和一样大。 输入格式 第…

IPsec连接 和 SSL连接

Psec和SSL连接是两种用于保障网络通信安全的技术 IPsec 通常用于连通两个局域网,主要是网对网的连接,如分支机构与总部之间,或者本地IDC与云端VPC的子网连接。适合站点间的稳定通讯需求以及对网络层安全有严格要求的场合。要求两端有固定的网…

chrome浏览器打开控制台很慢解决办法

问题:谷歌浏览器右键或者f12打开控制台速度很慢,需要等个几秒 解决: 设置成english(us)即可

期末C语言易错知识点整理

1.在定义多维数组时,除了最左边的维度,其余的维度必须明确指定大小 2.int m[1][4]{4}; 定义的是一个 1 行 4 列的二维数组,初始化时提供了一个元素 4,其余元素默认初始化为 0,因此是正确的。 3.二维数组 a[3][6] 中的索…

Python | Leetcode Python题解之第213题打家劫舍II

题目: 题解: class Solution:def rob(self, nums: List[int]) -> int:def robRange(start: int, end: int) -> int:first nums[start]second max(nums[start], nums[start 1])for i in range(start 2, end 1):first, second second, max(fi…

【LeetCode】反转字符串中的单词

目录 一、题目二、解法完整代码 一、题目 给你一个字符串 s ,请你反转字符串中 单词 的顺序。 单词 是由非空格字符组成的字符串。s 中使用至少一个空格将字符串中的 单词 分隔开。 返回 单词 顺序颠倒且 单词 之间用单个空格连接的结果字符串。 注意&#xff1…

PMP--知识卡片--波士顿矩阵

文章目录 记忆黑话概念作用图示 记忆 一说到波士顿就联想到波士顿龙虾,所以波士顿矩阵跟动物有关,狗,牛。 黑话 你公司的现金牛业务,正在逐渐变成瘦狗,应尽快采取收割策略;问题业务的储备太少&#xff0…

【深度学习】第3章——回归模型与求解分析

一、回归分析 1.定义 分析自变量与因变量之间定量的因果关系,根据已有的数据拟合出变量之间的关系。 2.回归和分类的区别和联系 3.线性模型 4.非线性模型 5.线性回归※ 面对回归问题,通常分三步解决 第一步:选定使用的model,…