我的Go+语言初体验——Demo游戏体验篇(直男程序员的真实体验)

简介: 我的Go+语言初体验——Demo游戏体验篇(直男程序员的真实体验)

本来打算实验一下go+环境下使用go的gin框架,简单的写一个web服务,但是存在一些已知问题,所以放到下一篇吧。今天看到群里许世伟老师发布tutorial下的demo游戏,很有意思,实测一波。


环境说明

目前最新的go+版本已经可以直接使用gop run执行项目了,但是我的版本还没有更新,还是按照之前的构建命令执行。如果有和我一样没升级Go+的,可以看看我怎么操作的。


项目实测

github项目地址:GitHub - goplus/spx: spx - A Go+ 2D Game Engine for STEM education

项目结构

image.png


Weather

在项目执行之前需要先构建一下。


image.png


构建命令


gop mod init test

go get github.com/goplus/gop/builtin

go get github.com/goplus/spx

执行命令,在01-Weather目录下运行。


gop run .

效果截图。


image.png


一个简单的对话动画制作。


Dragon

同样的方式试试Dragon。


image.png


这个游戏应该是龙会咬一口鲨鱼得一分的样子,随机的。


Clone

试试第三个clone。


image.png


这个应该是点一下就复制出一个新的牛。


Bullet

试试第四个bullet。


image.png


很怀旧的画面,和小时候的打飞机有点相似,不过没有障碍物。


Animation

试试第五个animation。


可能是因为我的版本比较低,报了下面的错误。


image.png


和群里其他人沟通了一下,他们用最新版都是可以的。我本来想着升级go+再测一下,但是想了想还是看看代码能不能自己改改。


1)首先去掉undefined方法,影响个功能罢了,先要启动。


image.png


执行一下


image.png


已经可以启动了,但是自己的飞机不见了,再改改。


2)我将04-Bullet里面的飞机spx,和res内的图片复制过来。


image.png


image.png


修改一下index,gmx


image.png


修改一下res/index.json


image.png


验证一下,没什么问题。


image.png


总结

博主因为工作的原因错过了不少许老师的公开课,没机会看到更多的内容,所以对于go+的学习大部分都是自己摸索的,不是很系统。如果需要系统的了解的话,还是建议去B站看一些博主的视频,还是很详细的。


今天主要就是玩了玩demo游戏,分享给大家。等bug修复好了,我还是希望把gin框架也在go+上玩一下。


如果本文对你有帮助的话,请点个赞吧,谢谢!



相关文章
|
10天前
|
Go 索引
go语言中的循环语句
【11月更文挑战第4天】
20 2
|
2天前
|
安全 Go 数据处理
Go语言中的并发编程:掌握goroutine和channel的艺术####
本文深入探讨了Go语言在并发编程领域的核心概念——goroutine与channel。不同于传统的单线程执行模式,Go通过轻量级的goroutine实现了高效的并发处理,而channel作为goroutines之间通信的桥梁,确保了数据传递的安全性与高效性。文章首先简述了goroutine的基本特性及其创建方法,随后详细解析了channel的类型、操作以及它们如何协同工作以构建健壮的并发应用。此外,还介绍了select语句在多路复用中的应用,以及如何利用WaitGroup等待一组goroutine完成。最后,通过一个实际案例展示了如何在Go中设计并实现一个简单的并发程序,旨在帮助读者理解并掌
|
1天前
|
Go 索引
go语言按字符(Rune)遍历
go语言按字符(Rune)遍历
11 3
|
5天前
|
Go API 数据库
Go 语言中常用的 ORM 框架,如 GORM、XORM 和 BeeORM,分析了它们的特点、优势及不足,并从功能特性、性能表现、易用性和社区活跃度等方面进行了比较,旨在帮助开发者根据项目需求选择合适的 ORM 框架。
本文介绍了 Go 语言中常用的 ORM 框架,如 GORM、XORM 和 BeeORM,分析了它们的特点、优势及不足,并从功能特性、性能表现、易用性和社区活跃度等方面进行了比较,旨在帮助开发者根据项目需求选择合适的 ORM 框架。
20 4
|
5天前
|
缓存 监控 前端开发
在 Go 语言中实现 WebSocket 实时通信的应用,包括 WebSocket 的简介、Go 语言的优势、基本实现步骤、应用案例、注意事项及性能优化策略,旨在帮助开发者构建高效稳定的实时通信系统
本文深入探讨了在 Go 语言中实现 WebSocket 实时通信的应用,包括 WebSocket 的简介、Go 语言的优势、基本实现步骤、应用案例、注意事项及性能优化策略,旨在帮助开发者构建高效稳定的实时通信系统。
35 1
|
8天前
|
Go
go语言中的continue 语句
go语言中的continue 语句
19 3
|
9天前
|
安全 Go 调度
探索Go语言的并发模型:goroutine与channel
在这个快节奏的技术世界中,Go语言以其简洁的并发模型脱颖而出。本文将带你深入了解Go语言的goroutine和channel,这两个核心特性如何协同工作,以实现高效、简洁的并发编程。
|
10天前
|
Go
go语言中的 跳转语句
【11月更文挑战第4天】
19 4
|
10天前
|
JSON 安全 Go
Go语言中使用JWT鉴权、Token刷新完整示例,拿去直接用!
本文介绍了如何在 Go 语言中使用 Gin 框架实现 JWT 用户认证和安全保护。JWT(JSON Web Token)是一种轻量、高效的认证与授权解决方案,特别适合微服务架构。文章详细讲解了 JWT 的基本概念、结构以及如何在 Gin 中生成、解析和刷新 JWT。通过示例代码,展示了如何在实际项目中应用 JWT,确保用户身份验证和数据安全。完整代码可在 GitHub 仓库中查看。
44 1
|
3天前
|
存储 Go PHP
Go语言中的加解密利器:go-crypto库全解析
在软件开发中,数据安全和隐私保护至关重要。`go-crypto` 是一个专为 Golang 设计的加密解密工具库,支持 AES 和 RSA 等加密算法,帮助开发者轻松实现数据的加密和解密,保障数据传输和存储的安全性。本文将详细介绍 `go-crypto` 的安装、特性及应用实例。
13 0
下一篇
无影云桌面