hareqj   ♂  喵他  
 编程让人生更优雅

Godot3D简单FPS射击游戏入门9--倍镜2

作者:多能豆
3D  单机游戏  第三人称RPG 
接着之前的,既然我们有了机瞄,那么接下来我们就要实装“倍镜”效果,而倍镜实现的效果大致有两种:
(1)适应性,即整个画面都放大

(2)真实型




我们首先做(1),依旧得益于Godot强大的动画系统,我们根本不需要写代码:
相机下有一个fov(视场角)属性,默认70,只要将其调小,就可以实现放大效果


点击我们之前创建的AnimationPlayer,到动画编辑界面中,点击添加轨道 -> 属性轨道:


再找到eye(相机)


再找到fov


添加完成后直接插入一个关键帧:


再把时间轴拖到最后,并把fov调低(我设置20),再插入关键帧




再把时间轴拖回最开始,这样(1)就已经做好了
(这里我懒得改瞄准镜了)



接下来我们再做(2)
首先,关闭(1)的效果


接下来调整一下瞄准镜


并添加以下节点


接着,先调整Viewport的size(这是倍镜画面的分辨率)


并且将Viewport下的Camera的fov更改:




到Sprite3D属性面板中,把材质改为Viewport材质:




再把它调整到倍镜后端:




最后来到player的脚本中:
在_process()函数中添加如下代码


就是获取Viewport下的Camera的全局变换,并将其设置为ker的全局变换
这样,ker指哪,这个Camera就会看哪了
(如果有穿模问题的话,请自行更改相机偏移或遮罩,这里就不多赘述了)
效果:

[举报]  赞↑ [0 踩↓ [0
暂无评论
[声明]

初衷和宗旨:共同努力,推动Godot游戏引擎在国内的普及和发展.
1.本站所有内容皆为用户发布,如有涉嫌侵权请联系hareqj#163.com,告知内容右上角所在编号以及侵权证据.
2.禁止发布色情/暴恐/时政/商广/带网址或二维码水印/涉嫌隐私或未经授权的私人图片.
3.举报和投稿:hareqj#163.com

Godot中文社区QQ群
Copyright Godot中文社区 Godott.com All Rights Reserved.
京ICP备13032831号