pyopengl全解析-9

前言

第一个项目PyOpenGL就很大——复现mc
更新的话,戳此

开始

知识点

github
其中用到的PyOpenGL知识有一个没讲——半透明
所以就讲一讲半透明好了,又别的问题在评论区里留言,我来回答哈。
半透明主要就是这几行代码

  • 加载材质时将
    glTexEnvf(GL_TEXTURE_ENV,GL_TEXTURE_ENV_MODE,     GL_DECAL)
    
    替换成
    glTexEnvf(GL_TEXTURE_ENV,GL_TEXTURE_ENV_MODE, GL_REPLACE)
    
  • 画之前加入
    glClearDepth(1.0)
    glEnable(GL_BLEND)
    glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA)
    
  • 画之后加入
    glDisable(GL_BLEND)
    

即可。
别的都是之前讲过的:

MapWindowConfig类中没有OpenGL,只是一些炒鸡简单的操作。

使用

第一步:编辑MinecraftStandardModMinecraft.mcMod

MinecraftStandardModMinecraft.mcMod是标准mod的文件,已经创建好,打开后将内容删去,填入json。
格式:

{
	"<方块名>":{
		"texture":{
			"front":"<前面的贴图>",
			"back":" <后面的贴图>",
			"left":"<左面的贴图>",
			"right":"右面的贴图",
			"top":"顶面的贴图",
			"bottom":"底面的贴图"
		},
		"use":"<可否使用,yes/no,可不写此项>",
		"transparent":"<是否透明,yes/no,可不写此项>",
		"entity":"<是否为实体,yes/no,可不写此项>",
		"generating":{
			"<y坐标值(格式:a~b或a,b,c,...或a~b,c,d)>":"<生成概率,可以不写此项>"
		},
		"vertex":"<mvf文件名,可以不写此项>"
	}
}

mvf文件格式:

(x1,y1,z1) (x2,y2,z2) (x3,y3,z3) (x4,y4,z4) -> <face>
......

表示将<face>面所代表的图片画在4个顶点表示为(x1,y1,z1) (x2,y2,z2) (x3,y3,z3) (x4,y4,z4)的位置。

另:写mod也请使用如上方法,请新建文件,例如abc.mcMod

添加文件

将需要在mc运行时执行的python文件放在excute文件夹中,在excute文件夹中的python文件可以调用api以达到控制游戏。

第二步:运行
mac/linux用户

直接在任何目录下执行:

chmod 777 /the/dir/to/mc-main/MinecraftForge
/the/dir/to/mc-main/MinecraftForge

即可

windows用户

运行/the/dir/to/mc-main/MinecraftForge.bat

本人不懂bat,在网上边学边写,有可能不对,请自行修改。
暂时无法存档,以后再更新存档问题吧


作者

hit-road

拜拜,下课!
回到顶部

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值