“西工大复原工程”的版本间的差异

来自NPUcraftWiki
(复原工程重构更新)
 
(未显示2个用户的18个中间版本)
第1行: 第1行:
==简介==
[[常见问题解答#复原工程|西工大复原工程]]是西北工业大学学生Minecraft创作协会(原NPUcraft社团)自2020年秋发起的在Minecraft中复原西工大校园的建筑工程,目前处在一期收尾阶段。已经复原了长安校区的部分建筑,尚未有复原友谊校区和太仓校区的计划。
西北工业大学的校园复原计划现已成为国家级创新创业项目——基于Minecraft的虚拟现实建模技术,协会还组织了多次寒暑假社会实践项目。以游戏的原生元素为基础,同学们制作出了以java为底层代码、blockbench为模型批量制作软件的快速建模路线,结合无人机自动扫描成像技术,减小了使用常规方法勘测和建模的时间成本以及人力成本,加快了三维建模的制作过程,并用此方法在游戏中制作出了他们的校园。西工大Minecraft创作协会主导的复原工程项目已经被学校和地方媒体多次报道,并在老师们和同学们之间具有很高知名度。目前,社团正在与校团委和其他官方机构合作,计划基于已经复原的校园拍摄一系列短片,可以用于纪念日、毕业典礼、招生宣传等。


西工大复原工程是西北工业大学学生NPUcraft社团自2020年秋发起的在Minecraft中复原西工大校园的建筑工程,目前处在一期收尾阶段。已经复原了长安校区的部分建筑,目前尚未复原友谊校区和太仓校区。
==进度==
 
工程目前第一期已完结,正在筹划启动第二期。
 
目前已经复原了星天苑宿舍区、星天苑南餐厅、星天苑北餐厅、静悟园、数字化大楼、星天苑操场、翱翔学生中心、翱翔广场、翱翔西配楼、通慧园、云天苑宿舍区、云天苑餐厅、教学东楼。
 
==成果==
*2021年寒假、2021年暑假、2022年寒假三次社会实践活动,其中2021年暑假被评为优秀实践队。
*2021年成功申请国家级大学生创新创业项目《基于Minecraft的虚拟现实建模技术》。
*2022年春投稿校官方宣传视频《[https://b23.tv/6wJn2VS Minecraft中的西北工业大学]》。


==加入方式==
==加入方式==
第30行: 第40行:


复原工程在2021年寒假达到施工高峰,地图的全貌每隔两三天就能看出明显的变化。Rinryrethoic在寒假时期撰写了详尽的工作手册、确定了明确的分工,并日更施工进度。使得大家施工效率,交流频率大大增加,极大地推进了施工进程。
复原工程在2021年寒假达到施工高峰,地图的全貌每隔两三天就能看出明显的变化。Rinryrethoic在寒假时期撰写了详尽的工作手册、确定了明确的分工,并日更施工进度。使得大家施工效率,交流频率大大增加,极大地推进了施工进程。
===窘境===
随着时间的推移,复原工程在推进的同时,也逐渐产生了许多问题。适用于1.12.2的复原工程专用Forge mod代码冗余问题日渐突出,且至2024年,1.12.2的Minecraft版本已经十分落后,复原工程服务器出现了大大小小的性能问题,稳定性下降,严重阻碍了复原工程的推进。复原工程需要进行版本升级与模组重构。
===重构===
2024年秋,Infinomat开始对复原工程所用mod进行重构,初始重构目标版本定于1.20.1,后来由于Minecraft版本更新迅速,秉持着更新就更新到底的理念,将目标版本先后定于1.21.5,1.21.7,最终来到1.21.8,模组API也从Forge变更为NeoForge,最终定于Fabric。从2024年秋至2025年暑假末历经近1年时间,基本完成了版本迁移与模组重构。
===当今===


时至今日,复原工程已经拥有了一条成熟的技术路线,产出了模组和大量模型,并配合大量详细教程以帮助新手快速上手。同学们在参与复原工程的过程中也锻炼了自身的学习能力,掌握了建模和编程相关知识,并且体会到了在集体中工作的乐趣和意义。
时至今日,复原工程已经拥有了一条成熟的技术路线,产出了模组和大量模型,并配合大量详细教程以帮助新手快速上手。同学们在参与复原工程的过程中也锻炼了自身的学习能力,掌握了建模和编程相关知识,并且体会到了在集体中工作的乐趣和意义。


==现状==
==技术==
 
===第一代开发===
 
在Sponge的基础上,TeachingFeelings编写了适用于1.12.2的复原工程专用Forge mod,添加了同学们所做的各种方块,并编写了MTS的附属载具包NPUVehiclePack,由Rinryrethoic出资(约500)制作了ARJ-21和校车的模型(游戏内可驾驶)。


工程进度目前处于第一期收尾阶段。
后计划由[[SUPER2FH]](其实是一只猫)接手开发,未来准备移植到1.16.5Fabric。


目前已经造出了星天苑宿舍区、云天苑宿舍区、翱翔学生中心与教学东楼。
===第二代开发===


==技术==
由于Minecraft从1.12.2到1.21.8的版本跨度巨大,基于1.12.2版mod编写新mod几乎不再可能。因此Infinomat将整个mod在新版本重新编写,并且加入了资源热加载的特性,将物品栏、物品、方块的添加从Java代码中剥离,置于资源文件中以Json文件形式储存。
在sponge的基础上,TeachingFeelings编写了适用于1.12.2的复原工程专用mod,添加了同学们所做的各种方块,并编写了MTS的附属载具包NPUVehiclePack,由Rin出资


(约500)制作了ARJ-21和校车的模型(游戏内可驾驶)。
由于Minecraft数据存储方式变更,且新模组中大量方块id更改,旧存档数据搬至新存档也十分困难。在SUPER2FH的建议下,计划采用Litematica投影mod,将整个存档划分为98个区域逐一导出处理,最后粘贴至新版存档中。处理所用程序由Infinomat开发。(由于巨量的方块数据,方块id映射有些许偏差,导致新版复原工程存档中的一些方块缺失或变成了其他方块,但总体迁移较为成功)


后由[[SUPER]](其实是一只猫)接手开发,未来准备移植到1.16.5。
这一代的mod方块添加更为容易,版本更新与代码维护也更为方便。


==未来规划==
==未来规划==
===基于Minecraft===
1.Minecraft游戏内复原
2.通过replaymod等类似mod制作海报/视频
3.开放复原工程服务器
===二次开发===
1.基于Bluemap插件初步实现网页浏览
2.基于j-mc-obj,实现导出obj模型
3.使用Lumion专业动画软件,制作更专业的视频
4.基于WebGL,自主实现Bluemap
===待探索的领域===
1.三维打印
2.VR虚拟现实


==参与人员==
==参与人员==
第97行: 第141行:


pollux
pollux
Infinomat
Fulucky0
JiuTian_gg
sjlx
bugu
purple_rain
Entity_Fish
barrrrrrier
ning_123
Elei
icemelon101
soldier2adam
Wankuai
Rawatermelon
carefree
MoB_Nian
Ryan_luobo
Ssven

2025年8月13日 (三) 13:12的最新版本

西工大复原工程是西北工业大学学生Minecraft创作协会(原NPUcraft社团)自2020年秋发起的在Minecraft中复原西工大校园的建筑工程,目前处在一期收尾阶段。已经复原了长安校区的部分建筑,尚未有复原友谊校区和太仓校区的计划。 西北工业大学的校园复原计划现已成为国家级创新创业项目——基于Minecraft的虚拟现实建模技术,协会还组织了多次寒暑假社会实践项目。以游戏的原生元素为基础,同学们制作出了以java为底层代码、blockbench为模型批量制作软件的快速建模路线,结合无人机自动扫描成像技术,减小了使用常规方法勘测和建模的时间成本以及人力成本,加快了三维建模的制作过程,并用此方法在游戏中制作出了他们的校园。西工大Minecraft创作协会主导的复原工程项目已经被学校和地方媒体多次报道,并在老师们和同学们之间具有很高知名度。目前,社团正在与校团委和其他官方机构合作,计划基于已经复原的校园拍摄一系列短片,可以用于纪念日、毕业典礼、招生宣传等。

进度

工程目前第一期已完结,正在筹划启动第二期。

目前已经复原了星天苑宿舍区、星天苑南餐厅、星天苑北餐厅、静悟园、数字化大楼、星天苑操场、翱翔学生中心、翱翔广场、翱翔西配楼、通慧园、云天苑宿舍区、云天苑餐厅、教学东楼。

成果

  • 2021年寒假、2021年暑假、2022年寒假三次社会实践活动,其中2021年暑假被评为优秀实践队。
  • 2021年成功申请国家级大学生创新创业项目《基于Minecraft的虚拟现实建模技术》。
  • 2022年春投稿校官方宣传视频《Minecraft中的西北工业大学》。

加入方式

有意向者加入复原学校工程的,请联系管理员表明意向,经过管理员考核后可以进入复原学校工程交流QQ群,入服建设。

进入建筑服硬性要求:

1) 非观光摸鱼党;

2) 需要为西工大在校生或毕业生。

历史

复原工程最早由RinryrethoicTeachingFeelings提出并带头实施。

早期教训

早期复原工程由于优化问题不得不放弃。

早期的前辈在探索过程中曾走了一条错误的技术路线。早期尝试过使用LittleTiles模组直接在Minecraft中建模然后将模型大量复制摆放。但诸如桌椅,宿舍床等模型往往在一栋宿舍楼中重复成百上千次,批量摆放之后客户端会因为需要渲染大量的小方块而掉帧,以至于到几乎不能操作的程度。服务器也会因为需要对每一个小方块进行实时的碰撞运算而给CPU带来大量负担。于是早期复原工程的尝试在得出该惨痛教训之后,暂时停止工程。

重启

如今的复原工程实际上是在吸取了早期教训的基础上重启的结果。

后来复原工程于2020年秋重启,几乎和社团成立处于同一时间,由Rinryrethoic担任总指挥,TeachingFeelings担任主要技术开发。

复原工程在2021年寒假达到施工高峰,地图的全貌每隔两三天就能看出明显的变化。Rinryrethoic在寒假时期撰写了详尽的工作手册、确定了明确的分工,并日更施工进度。使得大家施工效率,交流频率大大增加,极大地推进了施工进程。

窘境

随着时间的推移,复原工程在推进的同时,也逐渐产生了许多问题。适用于1.12.2的复原工程专用Forge mod代码冗余问题日渐突出,且至2024年,1.12.2的Minecraft版本已经十分落后,复原工程服务器出现了大大小小的性能问题,稳定性下降,严重阻碍了复原工程的推进。复原工程需要进行版本升级与模组重构。

重构

2024年秋,Infinomat开始对复原工程所用mod进行重构,初始重构目标版本定于1.20.1,后来由于Minecraft版本更新迅速,秉持着更新就更新到底的理念,将目标版本先后定于1.21.5,1.21.7,最终来到1.21.8,模组API也从Forge变更为NeoForge,最终定于Fabric。从2024年秋至2025年暑假末历经近1年时间,基本完成了版本迁移与模组重构。

当今

时至今日,复原工程已经拥有了一条成熟的技术路线,产出了模组和大量模型,并配合大量详细教程以帮助新手快速上手。同学们在参与复原工程的过程中也锻炼了自身的学习能力,掌握了建模和编程相关知识,并且体会到了在集体中工作的乐趣和意义。

技术

第一代开发

在Sponge的基础上,TeachingFeelings编写了适用于1.12.2的复原工程专用Forge mod,添加了同学们所做的各种方块,并编写了MTS的附属载具包NPUVehiclePack,由Rinryrethoic出资(约500)制作了ARJ-21和校车的模型(游戏内可驾驶)。

后计划由SUPER2FH(其实是一只猫)接手开发,未来准备移植到1.16.5Fabric。

第二代开发

由于Minecraft从1.12.2到1.21.8的版本跨度巨大,基于1.12.2版mod编写新mod几乎不再可能。因此Infinomat将整个mod在新版本重新编写,并且加入了资源热加载的特性,将物品栏、物品、方块的添加从Java代码中剥离,置于资源文件中以Json文件形式储存。

由于Minecraft数据存储方式变更,且新模组中大量方块id更改,旧存档数据搬至新存档也十分困难。在SUPER2FH的建议下,计划采用Litematica投影mod,将整个存档划分为98个区域逐一导出处理,最后粘贴至新版存档中。处理所用程序由Infinomat开发。(由于巨量的方块数据,方块id映射有些许偏差,导致新版复原工程存档中的一些方块缺失或变成了其他方块,但总体迁移较为成功)

这一代的mod方块添加更为容易,版本更新与代码维护也更为方便。

未来规划

基于Minecraft

1.Minecraft游戏内复原

2.通过replaymod等类似mod制作海报/视频

3.开放复原工程服务器

二次开发

1.基于Bluemap插件初步实现网页浏览

2.基于j-mc-obj,实现导出obj模型

3.使用Lumion专业动画软件,制作更专业的视频

4.基于WebGL,自主实现Bluemap

待探索的领域

1.三维打印

2.VR虚拟现实

参与人员

特别感谢在此付出了辛勤劳动的前辈、服友、社员们(排名不分先后):

Rinryrethoic

TeachingFeelings

xgdxiaoli

jjfjjmldhz

SUPER2FH

Orange_Chengjun

CTI天国

MarioRainflower

kuake

xiaoxiaolu

potato

LiQing

George

Nikola

yehuangwu

ADCa

MOMO07

ARKsealin

ACertainPlayer

muyu

Sirius0v0

lerb41

pollux

Infinomat

Fulucky0

JiuTian_gg

sjlx

bugu

purple_rain

Entity_Fish

barrrrrrier

ning_123

Elei

icemelon101

soldier2adam

Wankuai

Rawatermelon

carefree

MoB_Nian

Ryan_luobo

Ssven