悲剧小白 发表于 2019-3-3 12:22:36

[光影包制作教程] 第一章———认识光影

本帖最后由 悲剧小白 于 2019-3-3 17:03 编辑

索引待建立

从这一章节开始,我将带领大家逐步走进光影包的世界。首先我们需要先认识光影包,了解光影包的工作原理,看清光影包的目录结构。看完这一章节,你的光影包应该能在游戏的光影包列表中出现,如果没有出现,请重新看一遍本章节,并着重看目录结构。
光影包的工作原理
讲光影包的工作原理就必须先简单的讲一下OpenGL了(如果只是为了写光影包的话,了解就好,不必要记住)。OpenGL的编程要求程序员先创建一个OpenGL上下文,然后把上下文绑定到一个窗口中,最后通过编写GLSL文件来改变窗口的显示效果。而光影包加载器(本教程以OptiFine为例)就充当了游戏于光影包之间沟通的桥梁,光影包加载器已经为我们写好了OpenGL上下文,我们只需要写GLSL文件即可。光影包是通过一个或多个光影文件(GLSL文件),正确或错误的修改渲染参数以达到美化画面的效果。本系列教程确定会更新到光影入门,后续是否继续更新就看关注程度了。
光影包的目录结构光影包的基础目录结构是固定的(左图是基本目录结构),但是也允许程序员把光影包引用的运行库文件打包到光影包中,这就解释了为什么有些光影包多了一些目录。在这个目录结构中,除了第一个shaders文件夹外,其余目录和文件都是可选项。这就意味着即使你的光影包中只有一个空的shaders文件夹,也能被游戏识别,也可以被加载。左图中,world1和world-1文件夹分别是末地世界和地狱世界专用光影文件,如果没有的话会使用shaders文件夹内的文件。光影包中所有文件均为固定名字,请勿改名,改名将会导致文件失效。其中后缀为.vsh的是顶点着色器,后缀为.fsh的是片段着色器,后缀为.properties的是光影配置文件,它们各有各的用途。在顶点着色器中,我们能看到每一个方块的顶点数据,在片段着色器中,我们能看到每一个像素的颜色数据和光照数据。加载光影包时,会先加载顶点着色器,再加载片段着色器。同名的片段着色器可以收到顶点着色器传递的变量。

本章节测验尝试制作一个最简单的光影包,并成功加载。
小测验答案**** Hidden Message *****

6066xiaofeng 发表于 2019-3-3 14:39:02

已收藏               

xxxweb 发表于 2019-3-8 11:24:45

学习学习

猿汐 发表于 2019-3-8 17:11:49

涨知识了,学!

xiaodudu114 发表于 2019-3-10 17:12:23

收藏一下 学习学习

ljh221 发表于 2019-3-11 18:56:10

请问我的电脑不兼容某些光影是不是与openGL有关

悲剧小白 发表于 2019-3-12 10:11:54

ljh221 发表于 2019-3-11 18:56
请问我的电脑不兼容某些光影是不是与openGL有关

1、现在的光影,一般都会涉及到图形算法。不同的显卡对算法的要求和参数都不同,你可以去光影官网看看那个光影包支持哪个显卡。或者去这里查看光影包列表。
2、光影包是会区分mc版本的。绝大多数光影包都对mc做了向下兼容,也就是说最新版的光影一定会支持旧版mc,而旧版的光影可能会不支持新版mc。请注意查看光影包版本。

ljh221 发表于 2019-3-12 11:01:43

悲剧小白 发表于 2019-3-12 10:11
1、现在的光影,一般都会涉及到图形算法。不同的显卡对算法的要求和参数都不同,你可以去光影官网看看那 ...

显卡750ti说的

supernalksk 发表于 2019-3-12 13:52:23

感谢分享

飘渺之鸾 发表于 2019-3-13 16:24:51

看看;w;做做小学习

xzk0701 发表于 2019-3-13 17:29:22

学习学习。

誓约void 发表于 2019-3-16 16:07:29

感谢楼主的教程!

三千日落 发表于 2019-3-23 16:25:20

收藏了期待后续

天空y666 发表于 2019-3-24 19:14:11

感谢楼主,收藏了

吕不才 发表于 2019-3-27 19:19:56

这个光影教程适合1.12嘛
页: [1] 2 3 4 5 6 7 8 9 10
查看完整版本: [光影包制作教程] 第一章———认识光影