其实地铁跑酷怎样更换场景的问题并不复杂,但是又很多的朋友都不太了解《地铁跑酷》地图场景更换方法,因此呢,今天小编就来为大家分享地铁跑酷怎样更换场景的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!
一、地铁跑酷场景为什么不能弯曲
来自专栏CRLuo的Shader基础知识
大场景,远处景物的闪现会很让游玩的玩家出戏。
地铁跑酷和动森用了不同的方式来抵消这种问题。
之前的内容
UnityShader基础(21)-空间渐变-距离剔除透明
介绍了如何利用空间位置“o.WordPos”进行颜色着色。
这一节在顶点片段中修改"o.vertex”模型坐标数据就可以改变模型形状。
之前的地铁跑酷游戏
整个场景其实是一条直线,道路的左右弯道,上下坡道,是用Shader弯曲模型顶点做到的。
首先创建两个控制属性
_SwerveX("左右弯道", Range(-0.01,0.01))= 0.0 _SwerveY("上坡下破", Range(-0.01,0.01))= 0.0
在顶点片段中加入以下修改顶点程序,总共分3步
第一步,首先把模型空间顶点,转为世界空间顶点
//获取模型的空间坐标 float3 WordPos= mul(unity_ObjectToWorld, v.vertex);//----左右坐标作为弯道----//依据Z坐标求平方获取弯曲曲线,越远离世界坐标原点,弯曲效果越明显。//最后乘以左右弯道弯曲方向,和弯曲强度 WordPos.x+=pow(WordPos.z, 2)*_SwerveX;//方法与上面相同,改变Y轴,获得上下坡效果 WordPos.y+= pow(WordPos.z, 2)*_SwerveY;
第二步,在模型空间下,依据空间坐标修改顶点
//修正模型位置,WordPos不包含物体自身的空间位移 WordPos-= mul(unity_ObjectToWorld, float4(0, 0, 0, 1));
第三步把修改结果转回模型空间,修改原始模型数据。
//修改世界顶点转回物体自身顶点。 v.vertex= mul(unity_WorldToObject, WordPos);
使用效果:
动态效果:
Shader代码
Shader"CRLuo/CRLuo_Teaching38_Vertex_PathBend_Base"{ Properties{ _MainTex("颜色纹理", 2D)="white"{} _SwerveX("左右弯曲程度", Range(-0.003,0.003))= 0.0 _SwerveY("上下弯曲程度", Range(-0.003,0.003))= 0.0} SubShader{ Tags{"RenderType"="Opaque"} LOD 100 Pass{ CGPROGRAM#pragma vertex vert#pragma fragment frag// make fog work#pragma multi_compile_fog#include"UnityCG.cginc" struct appdata{ float4 vertex: POSITION;//获取模型第一套UV float2 uv: TEXCOORD0;}; struct v2f{ float2 uv: TEXCOORD0; float4 vertex: SV_POSITION; UNITY_FOG_COORDS(4)};//颜色纹理 sampler2D _MainTex; float _SwerveX; float _SwerveY; v2f vert(appdata v){ v2f o; o.uv= v.uv;//获取模型的空间坐标 float3 WordPos= mul(unity_ObjectToWorld, v.vertex);//左右左右坐标作为弯道//依据Z坐标求平方获取弯曲曲线,越远离世界坐标原点,弯曲效果越明显。//最后乘以左右弯道弯曲方向,和弯曲强度 WordPos.x+=pow(WordPos.z, 2)*_SwerveX;//方法与上面相同,改变Y轴,获得上下坡效果 WordPos.y+= pow(WordPos.z, 2)*_SwerveY;//修正模型位置,WordPos不包含物体自身的空间位移 WordPos-= mul(unity_ObjectToWorld, float4(0, 0, 0, 1));//修改世界顶点转回物体自身顶点。 v.vertex= mul(unity_WorldToObject, WordPos);//转换为裁切空间 o.vertex= UnityObjectToClipPos(v.vertex); UNITY_TRANSFER_FOG(o,o.vertex); return o;} fixed4 frag(v2f i): SV_Target{//获取颜色贴图 fixed4 col= tex2D(_MainTex, i.uv);// apply fog UNITY_APPLY_FOG(i.fogCoord, col); return col;} ENDCG}}}
动物森友会使用的类似球形的地图,来抵消模型的突然出现。
可以使用X和Z轴坐标来影响模型点Y的位置。
核心代码就是
把
WordPos.x+=pow(WordPos.z, 2)*_SwerveX; WordPos.y+= pow(WordPos.z, 2)*_SwerveY;
替换为
//Y轴扭=曲依据XZ坐标变化 WordPos.y-= pow(WordPos.x, 2)*_BendY; WordPos.y-= pow(WordPos.z, 2)*_BendY;
使用效果:
动态效果
Shader代码
Shader"CRLuo/CRLuo_Teaching39_Vertex_WorldBend_Base"{ Properties{ [NoScaleOffset] _MainTex("颜色纹理", 2D)="white"{} _BendY("弯曲程度", Range(0,0.01))= 0.0} SubShader{ Tags{"RenderType"="Opaque"} LOD 100 Pass{ CGPROGRAM#pragma vertex vert#pragma fragment frag// make fog work#pragma multi_compile_fog#include"UnityCG.cginc" struct appdata{ float4 vertex: POSITION;//获取模型第一套UV float2 uv: TEXCOORD0;}; struct v2f{ float2 uv: TEXCOORD0;//定义顶点世界变量 float4 WordData: TEXCOORD1; float4 vertex: SV_POSITION; UNITY_FOG_COORDS(4)};//颜色纹理 sampler2D _MainTex; float _BendY; v2f vert(appdata v){ v2f o; o.uv= v.uv; float3 WordPos= mul(unity_ObjectToWorld, v.vertex);//获取Y轴坐标 o.WordData.x= WordPos.y;//Y轴扭=曲依据XZ坐标变化 WordPos.y-= pow(WordPos.x, 2)*_BendY; WordPos.y-= pow(WordPos.z, 2)*_BendY;//获取位移位置 WordPos-= mul(unity_ObjectToWorld, float4(0, 0, 0, 1));//修改世界顶点转回物体自身顶点。 v.vertex= mul(unity_WorldToObject, WordPos);//转换为裁切空间 o.vertex= UnityObjectToClipPos(v.vertex); UNITY_TRANSFER_FOG(o,o.vertex); return o;} fixed4 frag(v2f i): SV_Target{//获取颜色贴图 fixed4 col= tex2D(_MainTex, i.uv);// apply fog UNITY_APPLY_FOG(i.fogCoord, col); return col;} ENDCG}}}
后记:
这里使用了最简单粗暴的平方曲线来模拟圆弧,
后面会讨论更多的曲线公式与算法。
二、地铁跑酷多久换场景
众所周知地铁跑酷的游戏场景每隔一段时间就会进行更换,可是很多玩家都不清楚具体的更换时间是多久一次,那么今天小编就来给大家介绍一下地铁跑酷更换场景的时间,一起来了解一下吧。
地铁跑酷多久换场景
更换时间:一个月
1、地铁跑酷每隔一个月的时间就会更新城市主题,也就是更换场景。
2、地铁跑酷的地图一般都是根据版本进行改动的,一个城市代表一个赛季的主题,每隔版本大约会持续一个月左右。
3、游戏中的任务、场景、道具都会根据主题进行制作设计,同时还会登场角色的新皮肤。
三、《地铁跑酷》地图场景更换方法
《地铁跑酷》是一款动作冒险类的竞技游戏,游戏中很多玩家对于单调的背景不太满意,想要更换,但是是不能直接更换的!下面是 3D M我给大家带来的《地铁跑酷》地图场景更换方法一览,感兴趣的小伙伴们一起来看看吧。
地铁跑酷可以换地图吗
不可以,因为地铁跑酷中不能更换地图。但是我们可以选择更新游戏换掉地图。
地铁跑酷场景更换方法
进入应用商店里-我-更新管理,更新游戏之后可能内容游戏记录会消失,谨慎选择。
四、地铁跑酷多长时间换一次场景
地铁跑酷多长时间换一次场景,这取决于游戏的具体版本和更新频率。
一般而言,地铁跑酷的游戏场景会随着游戏的更新而发生变化。游戏开发者会根据节假日、季节、特殊事件等因素,推出相应的场景和活动。例如,在春节期间,游戏可能会推出具有春节特色的场景,如装饰有灯笼、对联和鞭炮的街道;在夏季,可能会有海滨城市或热带岛屿的场景。这些更新不仅为玩家带来新鲜感,也增加了游戏的趣味性和互动性。
此外,地铁跑酷也会根据不同的城市或地区推出特色场景。例如,游戏可能会推出巴黎、东京、纽约等世界著名城市的地铁跑酷场景,让玩家在游戏中感受不同城市的风貌和文化特色。这些特色场景通常会在游戏更新时推出,以吸引玩家的注意力,并增加游戏的吸引力。
总的来说,地铁跑酷的游戏场景更换频率取决于游戏开发者的更新计划和玩家的需求。随着游戏的不断发展和更新,地铁跑酷的场景也会变得更加丰富多样,为玩家带来更好的游戏体验。
举个例子,假设地铁跑酷在一年内推出了四个季度更新,每个季度更新都带来了新的场景和活动。在春季更新中,游戏推出了樱花盛开的日本街道场景;在夏季更新中,则变成了阳光明媚的海滨城市;到了秋季,游戏又换成了落叶纷飞的巴黎街头;而到了冬季,则变成了银装素裹的北欧小镇。这样的更新节奏不仅让玩家在游戏中体验到了四季的变化,也感受到了不同国家和地区的文化魅力。
因此,可以说地铁跑酷的场景更换频率是相对灵活的,取决于游戏开发者的计划和玩家的需求。随着游戏的不断发展和更新,我们期待地铁跑酷能够为我们带来更多精彩纷呈的场景和体验。
关于本次地铁跑酷怎样更换场景和《地铁跑酷》地图场景更换方法的问题分享到这里就结束了,如果解决了您的问题,我们非常高兴。
版权声明:本文《地铁跑酷怎样更换场景,《地铁跑酷》地图场景更换方法》由网友konglu提供,仅作为展示之用,版权归原作者及公司所有;
出于传递更多信息之目的,如果侵犯了您的权益,请您来信告知,我们会尽快删除。