forge 和 NeoForge 配置Mixin-1.20.4版本
Forge配置Mixins方法1.使用Minecraft Development 插件创建项目时候勾选上Use Mixins即可。
点击create后等待构建完成。
这里我使用这个插件构建项目导致启动游戏会报错找不到main类,不怎么怎么解决。
方法2 在Forge开发环境中配置Mixins配置forge下载Forge的MDK
等待广告后下载
解压后使用IDEA打开这个文件夹
等待项目构建完成
运行该Task
完成后可以选择run client
正常启动,就说明forge可以正常运行了。
配置mixin1.将MixinGradle插件添加到Gradle构建脚本中
12345678910111213141516buildscript { repositories { // These repositories are only for Gradle plugins, put any other repositories in the repository block further below maven ...
Minecraft 查询各个mapping之间的对应关关系网站
网站Linkie (shedaniel.dev)
中文
依赖
关于Minecraft模组的一些配置信息,这些配置通常用于构建和设置Minecraft模组项目。
在加载器中可以选择你的构建模组是使用的加载器和构建系统。
这里可以选择你要构建模组的游戏的版本。
映射
在这里可以选择你的源mapping以及目标mapping
在这里输入的你源mapping中的名字进行搜索,可以得到目标mapping中的名称
其中的类,方法,字段是可以选择进行过滤的。
opengl13投光物
平行光1234567891011121314151617181920212223242526272829303132333435363738394041424344454647#version 330 corestruct Material{ sampler2D diffuse; sampler2D specular; float shininess;};struct Light{// vec3 position; vec3 direction; vec3 amnbien; vec3 diffuse; vec3 specular;};in vec3 FragPos;in vec3 Normal;in vec2 TexCoords;out vec4 FragColor;uniform vec3 viewPos;uniform Material material;uniform Light light;void main(){ // 环境光 vec3 ambient = light ...
opengl12光照贴图
漫反射贴图123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201 ...
opengl11材质
材质123456789#version 330 corestruct Material { vec3 ambient; vec3 diffuse; vec3 specular; float shininess;}; uniform Material material;
1234567891011121314151617181920void main(){ // 环境光 vec3 ambient = lightColor * material.ambient; // 漫反射 vec3 norm = normalize(Normal); vec3 lightDir = normalize(lightPos - FragPos); float diff = max(dot(norm, lightDir), 0.0); vec3 diffuse = lightColor * (diff * material.diffuse); // 镜面光 vec3 viewDir ...
opengl10基础光照
现实光照的复杂性与OpenGL简化模型:
现实世界光照复杂,受多种因素影响,难以模拟。
OpenGL使用简化模型,如冯氏光照模型,近似现实情况以便更易处理并看起来类似。
冯氏光照模型:
由环境、漫反射和镜面光照三个分量构成。
模拟环境光照、漫反射和镜面光照对物体的影响。
环境光照:
模拟环境中即使黑暗也存在的微弱光线,给物体一些颜色。
通过光的颜色乘以常量环境因子,再乘以物体的颜色,将结果作为片段的颜色。
漫反射光照:
受光线方向影响,角度越接近光源,物体片段越亮。
计算漫反射光照需要法向量、光线方向和片段位置。
使用法向量和光线方向的点乘计算影响,乘以光的颜色,得到漫反射分量。
环境光照:
模拟即使在黑暗情况下仍有一些光线存在,为物体增添常量颜色以模拟周围光线的影响。
通过乘以环境因子和物体颜色来计算片段的颜色。
漫反射光照:
反映光源对物体方向性影响,计算光线与物体法向量之间的角度,乘以光的颜色以得到漫反射分量。
强调正对光源的部分更亮,角度越大,片段越暗。
法线矩阵:
介绍了如何转换法向量到世界空间坐标,避免了不等比缩放对法向量造成的影响。 ...
opengl09颜色
颜色
颜色原理:介绍了颜色在现实世界中的表现和数字化表示(RGB)。阐述了物体颜色是由其所反射的颜色构成的概念,说明了光源和物体颜色相乘得到物体最终反射的颜色。
光照原理:解释了光源对物体的影响。通过不同颜色的光源照射同一物体,说明了光源的颜色如何影响最终感知到的物体颜色。
创建光照场景:提供了创建光照场景的步骤。包括使用顶点着色器和片段着色器绘制箱子和灯光源,以及如何将灯光源与光照计算分离以保持其亮度。
代码实现:展示了相关的OpenGL代码,从创建对象到绘制光照场景的步骤。
下一步展望:指出本节内容在当前阶段可能显得平淡,但暗示将在接下来的教程中继续深入探讨,使得光照场景更加生动有趣。
code:
https://gist.github.com/Flandre923/28c9ba1c21682146c5f894606eabcfc3
Minecraft-world相关内容
Fabric的源码,对应的反混淆比较多。
forge和neoforge大家就自己对应下把
World字段
CODEC用于将RegistryKey类型对象转为二进制数据或者反之。RegistryKey用于表示注册表的类,World是一个注册表。
OVERWORLD表示世界中的主世界。
NETHER表示下届
END表示末地
HORIZONTAL_LIMIT水平边界,玩家可达到的最远坐标
MAX_UPDATE_LIMIT 最大更新深度,即每个tick最多更新的方块数量
field_30967 => 32数值的是每个区块的大小
field_30968 => 15的是最大关照等级
field_30969 => 24000 一天的长度tick
MAX_Y 玩家能达到的最大高度
MIN_Y 玩家能达到的最低高度
blockEntityTickers List类型,存储每个tick更新的方块实体。
neighborUpdater 邻居更新器,用于更新周围方块
pendingBlockEntityTickers List类型 用于存储下一个tick要更 ...
opengl08摄像机
摄像机观察矩阵在OpenGL中移动场景,模拟出摄像机效果
讨论如何配置OpenGL摄像机,实现FPS风格的自由移动,并创建一个自定义摄像机类。
摄像机/观察空间
观察矩阵将世界坐标转换为相对于摄像机位置与方向的观察坐标。
定义摄像机需要位置、观察方向、右侧向量和上方向向量。
获取摄像机位置、方向向量、右向量和上向量的方法。
使用这些向量创建LookAt矩阵,将世界坐标转换到观察空间。
示例中展示了如何使用GLM库中的函数来创建观察矩阵。
最后通过一段代码展示了如何让摄像机围绕场景旋转,并使用LookAt矩阵实现视角的变化。、
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112 ...