(摘)
Godot加载超大型地图的解决探讨(学习更新中)
2024年3月5日
godot
地图
有网友提出,当地图过大时,会导致加载时间过长,内存占用过大,以及较大的PCK包等问题。于是网上搜搜解决方法。
1 在Github中,有网友的解决方法:将超大地图切分为几个区域,使用条件触发。
也提到几个问题:需要手动的划分区域,且区域之间需要精心设计,以避免玩家看到“空”(未加载)区域。比如扭曲环境,使用“雾”来掩盖。在“两个场景”中切换时会更麻烦。
...
➦
(原)
Godot使用ENetMultiplayerPeer实现的简单聊天室
2024年3月4日
godot
enetmultiplayerpeer
聊天
确实是比较简单,创建服务器,加入服务器。连接后,每次都会获取名字和内容。
get_tree().set_multiplayer(SceneMultiplayer.new(),self.get_path()) 啥意思?不用也没啥区别。
peer.get_host().compress(ENetConnection.COMPRESS_RANGE_CODER) 这个有效果吗?估计得人多才能有测试。
为什么要在发送信息时使用 msg_rpc.rpc(my_name.text,send_message.text) ? 执行远程客户端上的msg()函数,并附带上当前的姓名和消息内容。
...
➦
(摘)
Tweens: 制作简单动画
2024年3月1日
tweens
godot
Tweens是可以使用数学函数随时间修改其他对象的属性值的对象。
var tween : Tween = create_tween() var tween : Tween = get_tree().create_tween().bind_node(self) # 创建一个新的全局Tween对象 tween_property(object, property, final_val, duration)
object: 目标对象
property: 要更改的属性
final_val: 最终值
duration: 持续时间(秒)
...
➦
(原)
解决 Gravatar 不能用的问题 及 StudyGolang 论坛的头像处理
2024年3月1日
gravatar
studygolang
因为想建一个论坛,于是使用了StudyGolang。不知道为什么硬要使用七牛(就一个小破站,哪需要搞那么复杂,而且还没得选。),又还涉及到 Gravatar 头像网站不能打开的问题(那些坐在办公室打游戏的脑壳有包)。
...
➦
(隐)
传奇游戏的运营设计
2024年3月1日
传奇
************************
(摘)
Godot关于网络(持续更新)
2024年2月29日
godot
网络
收录关于Godot网络的方方面面,陆续增加.
高级多人游戏 官方原文链接
# 客户端 var peer = ENetMultiplayerPeer.new() peer.create_client(IP_ADDRESS, PORT) multiplayer.multiplayer_peer = peer # 服务端 var peer = ENetMultiplayerPeer.new() peer.create_server(PORT, MAX_CLIENTS) multiplayer.multiplayer_peer = peer # …
...
➦
(摘)
Godot浮动文字
2024年2月29日
godot
浮动
主场景中,鼠标左键点击则出现浮动文字
浮动文字场景:
代码:
extends Node2D @export var text :String @export var velocity = Vector2.ZERO @export var gravity = Vector2.ZERO @export var mass = 100 func _ready(): var tween = create_tween() …
...
➦
(摘)
Godot ProjectSettings 获取工程设置
2024年2月27日
godot
projectsettings
原文链接
这个对象常用于读取自定义游戏配置选项。
例如用以下代码来获取项目名称:
ProjectSettings.get_setting("application/config/name") 项目描述:application/config/description
版本信息:application/config/version
...
➦
(摘)
Godot 等待信息和协程 await
2024年2月27日
godot
await
原文链接
await 关键字可以用来创建协程,会等待某个信号发出之后再继续执行下面的代码
例如,要暂停代码执行,直到到用户按下某个按钮后才能继续往下执行剩余代码,你就可以这样写:
...
➦
(摘)
Golang获取网段内所有IP
2024年2月26日
golang
ip
通过网关IP和掩码,获取本网段所有IP。通过“通义千问”搜索出来的不靠谱。
package main import ( "fmt" "net" ) // 获取同网段所有 IP 地址 func getIPsInRange(ipAddr string, subnetMask string) ([]string, error) { ip := net.ParseIP(ipAddr) mask := net.IPMask(net.ParseIP(subnetMask).To4()) // 获取 IP 地址所在的网络 _, ipNet, err := …