|
楼主 |
发表于 2024-5-19 09:48:59
|
显示全部楼层
窗口程序集名 | 保 留 | 保 留 | 备 注 | 画图程序集 | | | | 变量名 | 类 型 | 数组 | 备 注 | 实际比例 | 双精度小数型 | | 长 | 整数型 | | 宽 | 整数型 | | 开始创建列表 ( #地板列表号, #GL_编译列表 )画地板 ( #地板宽, #地板长, 10, 10 )停止创建列表 ()变量名 | 类 型 | 静态 | 数组 | 备 注 | 循环变量1 | 整数型 | | | 循环变量2 | 整数型 | | | 循环变量3 | 整数型 | | | 墙面宽度 | 小数型 | | |
长 = 取数组下标 (迷宫, 1 )宽 = 取数组下标 (迷宫, 2 )墙面宽度 = 1 - #柱子宽度一半 × 2 开始创建列表 ( #墙壁列表号, #GL_编译列表 )绑定纹理号 ( #GL_二维纹理, #墙壁图片纹理号 )画墙壁柱子 ()变量循环首 (1, 长, 1, 循环变量1 )变量循环首 (1, 宽, 1, 循环变量2 )矩阵入栈 ()坐标平移 (循环变量1 - 1, 0, 1 - 循环变量2 )坐标平移 ( #柱子宽度一半 ÷ 2, 0, #柱子宽度一半 × -1 )计次循环首 (4, 循环变量3 )如果真 (迷宫 [循环变量1 ] [循环变量2 ] [循环变量3 ] = 0 )画一面墙壁 (墙面宽度, #墙壁高, 0, 0, 墙面宽度 ÷ #柱子宽度一半, #墙壁高 ÷ #柱子宽度一半 ÷ 2 )坐标平移 ( #柱子宽度一半 ÷ 2 + 墙面宽度, 0, #柱子宽度一半 ÷ 2)坐标旋转 (90, 0, 1, 0 )计次循环尾 ()矩阵出栈 ()变量循环尾 ()变量循环尾 ()停止创建列表 ()变量名 | 类 型 | 静态 | 数组 | 备 注 | 循环变量1 | 整数型 | | | 循环变量2 | 整数型 | | | 计次循环首 (长 + 1, 循环变量1 )计次循环首 (宽 + 1, 循环变量2 )矩阵入栈 ()坐标平移 (循环变量1 - 1, 0, 1 - 循环变量2 )坐标平移 ( #柱子宽度一半, 0, #柱子宽度一半 ) 画一面墙壁 ( #柱子宽度一半 × 2, #墙壁高, 0, 0, 2, #墙壁高 ÷ #柱子宽度一半 ÷ 2 )坐标旋转 (90, 0, 1, 0 )坐标平移 ( #柱子宽度一半 × 2, 0, 0 )画一面墙壁 ( #柱子宽度一半 × 2, #墙壁高, 0.5, 0, 2, #墙壁高 ÷ #柱子宽度一半 ÷ 2 )坐标旋转 (90, 0, 1, 0 )坐标平移 ( #柱子宽度一半 × 2, 0, 0 )画一面墙壁 ( #柱子宽度一半 × 2, #墙壁高, 0, 0, 2, #墙壁高 ÷ #柱子宽度一半 ÷ 2 )坐标旋转 (90, 0, 1, 0 )坐标平移 ( #柱子宽度一半 × 2, 0, 0 )画一面墙壁 ( #柱子宽度一半 × 2, #墙壁高, 0.5, 0, 2, #墙壁高 ÷ #柱子宽度一半 ÷ 2 )坐标旋转 (90, 0, 1, 0 )坐标平移 ( #柱子宽度一半 × 2, 0, 0 )矩阵出栈 ()计次循环尾 ()计次循环尾 ()|
画地板 | | | |
地板宽 | 双精度小数型 | | | | 地板长 | 双精度小数型 | | | | 横向地砖数量 | 整数型 | | | | 纵向地砖数量 | 整数型 | | | | 绑定纹理号 ( #GL_二维纹理, #地板列表号 )开始画 ( #GL_四边形 )设置法向量 (0, 地板长, 0 ) 设置颜色 (1, 1, 1, 0 ) 设置纹理映射坐标 (0, 0 )设置点 (0, 0, 0 ) 设置纹理映射坐标 (横向地砖数量, 0 )设置点 (地板宽, 0, 0 ) 设置纹理映射坐标 (横向地砖数量, 纵向地砖数量 )设置点 (地板宽, 0, -地板长 ) 设置纹理映射坐标 (0, 纵向地砖数量 )设置点 (0, 0, -地板长 )停止画 ()|
画一面墙壁 | | | |
墙壁宽 | 双精度小数型 | | | | 墙壁高 | 双精度小数型 | | | | 纹理起始横坐标 | 双精度小数型 | | | | 纹理起始纵坐标 | 双精度小数型 | | | | 横向墙纸数量 | 整数型 | | | | 纵向墙纸数量 | 整数型 | | | | 开始画 ( #GL_四边形 )设置法向量 (墙壁高, 0, 0 ) 设置颜色 (1, 1, 1, 1 ) 设置纹理映射坐标 (纹理起始横坐标, 纹理起始纵坐标 )设置点 (0, 0, 0 ) 设置纹理映射坐标 (横向墙纸数量 + 纹理起始横坐标, 纹理起始纵坐标 )设置点 (0, 0, -墙壁宽 ) 设置纹理映射坐标 (横向墙纸数量 + 纹理起始横坐标, 纵向墙纸数量 + 纹理起始纵坐标 )设置点 (0, 墙壁高, -墙壁宽 ) 设置纹理映射坐标 (纹理起始横坐标, 纵向墙纸数量 + 纹理起始纵坐标 )设置点 (0, 墙壁高, 0 )停止画 ()|
定义光源 | | | |
环境光 | 小数型 | | | √ | 漫射光 | 小数型 | | | √ | 光源位置 | 小数型 | | | √ | 光源号 | | | | | 设置光源参数 (光源号, #GL_环境光, 环境光 )设置光源参数 (光源号, #GL_漫反射光, 漫射光 )设置光源参数 (光源号, #GL_光源位置, 光源位置 )设置光源参数 ( #GL_零号光源, #GL_镜面光, { 1, 1, 1, 1 }) 启用功能 (光源号 )|
定义雾 | | | |
模式 | 整数型 | | | | 颜色 | 小数型 | | | √ | 密度 | 小数型 | | | | 开始 | 小数型 | | | | 结束 | 小数型 | | | | 设置雾 ( #GL_雾模式, 模式 )设置雾 ( #GL_雾颜色, 颜色 )设置雾 ( #GL_雾密度, 密度 )设置雾 ( #GL_雾起点, 开始 )设置雾 ( #GL_雾终点, 结束 )开始创建列表 ( #准星列表号, #GL_编译列表 )矩阵入栈 ()开始画 ( #GL_线段 )设置颜色 (1, 1, 1, 0 )设置点 (-半径, 0, #最近距离 × -1 )设置点 (半径, 0, #最近距离 × -1 )设置点 (0, -半径, #最近距离 × -1 )设置点 (0, 半径, #最近距离 × -1 )停止画 ()半径 = 半径 ÷ 2 开始画 ( #GL_闭合线段 )设置颜色 (1, 1, 1, 0 )变量循环首 (0, 350, 10, 循环变量 )设置点 (半径 × 求余弦 (循环变量 × #pi ÷ 180 ), 半径 × 求正弦 (循环变量 × #pi ÷ 180 ), #最近距离 × -1 )变量循环尾 ()停止画 ()矩阵出栈 ()停止创建列表 ()|
画箭头 | | | |
入口横坐标 | 小数型 | | | | 入口纵坐标 | 小数型 | | | | 出口横坐标 | 小数型 | | | | 出口纵坐标 | 小数型 | | | | 其始高度 | 小数型 | | | | 大小 | 小数型 | | | | 厚度 | 小数型 | | | |
变量名 | 类 型 | 静态 | 数组 | 备 注 | 箭头1 | 双精度小数型 | | 0 | 箭头2 | 双精度小数型 | | 0 | 循环变量 | | | | 重定义数组 (箭头1, 假, 7, 6 )箭头1 [1 ] [1 ] = 0 箭头1 [1 ] [2 ] = 其始高度 箭头1 [1 ] [4 ] = 0.24 箭头1 [1 ] [5 ] = 0.93 箭头1 [1 ] [6 ] = 0.6 箭头1 [2 ] [1 ] = 0 + 大小 箭头1 [2 ] [2 ] = 其始高度 + 大小 箭头1 [2 ] [4 ] = 0.22 箭头1 [2 ] [5 ] = 0.66 箭头1 [2 ] [6 ] = 0.57 箭头1 [3 ] [1 ] = 0 + 大小 ÷ 2 箭头1 [3 ] [2 ] = 其始高度 + 大小 箭头1 [3 ] [4 ] = 0.17 箭头1 [3 ] [5 ] = 0.49 箭头1 [3 ] [6 ] = 0.43 箭头1 [4 ] [1 ] = 0 + 大小 ÷ 2 箭头1 [4 ] [2 ] = 其始高度 + 大小 × 3 箭头1 [4 ] [4 ] = 0.17 箭头1 [4 ] [5 ] = 0.49 箭头1 [4 ] [6 ] = 0.43 箭头1 [5 ] [1 ] = 0 - 大小 ÷ 2 箭头1 [5 ] [2 ] = 其始高度 + 大小 × 3 箭头1 [5 ] [4 ] = 0.17 箭头1 [5 ] [5 ] = 0.49 箭头1 [5 ] [6 ] = 0.43 箭头1 [6 ] [1 ] = 0 - 大小 ÷ 2 箭头1 [6 ] [2 ] = 其始高度 + 大小 箭头1 [6 ] [4 ] = 0.17 箭头1 [6 ] [5 ] = 0.49 箭头1 [6 ] [6 ] = 0.43 箭头1 [7 ] [1 ] = 0 - 大小 箭头1 [7 ] [2 ] = 其始高度 + 大小 箭头1 [7 ] [4 ] = 0.22 箭头1 [7 ] [5 ] = 0.66 箭头1 [7 ] [6 ] = 0.57 连续赋值 (0 + 厚度 ÷ 2, 箭头1 [1 ] [3 ], 箭头1 [2 ] [3 ], 箭头1 [3 ] [3 ], 箭头1 [4 ] [3 ], 箭头1 [5 ] [3 ], 箭头1 [6 ] [3 ], 箭头1 [7 ] [3 ])箭头2 = 箭头1 箭头2 [1 ] [4 ] = 0.85 箭头2 [1 ] [5 ] = 0.55 箭头2 [1 ] [6 ] = 0.57 箭头2 [2 ] [4 ] = 0.63 箭头2 [2 ] [5 ] = 0.5 箭头2 [2 ] [6 ] = 0.53 箭头2 [3 ] [4 ] = 0.75 箭头2 [3 ] [5 ] = 0.41 箭头2 [3 ] [6 ] = 0.38 箭头2 [4 ] [4 ] = 0.75 箭头2 [4 ] [5 ] = 0.41 箭头2 [4 ] [6 ] = 0.38 箭头2 [5 ] [4 ] = 0.75 箭头2 [5 ] [5 ] = 0.41 箭头2 [5 ] [6 ] = 0.38 箭头2 [6 ] [4 ] = 0.75 箭头2 [6 ] [5 ] = 0.41 箭头2 [6 ] [6 ] = 0.38 箭头2 [7 ] [4 ] = 0.63 箭头2 [7 ] [5 ] = 0.5 箭头2 [7 ] [6 ] = 0.53 开始创建列表 ( #箭头列表号, #GL_编译列表 )矩阵入栈 ()坐标平移 (入口横坐标, 0, 入口纵坐标 )多边形拉伸 ( #GL_凸多边形, 箭头1, 厚度 )矩阵出栈 ()矩阵入栈 ()坐标平移 (出口横坐标, 0, 出口纵坐标 )多边形拉伸 ( #GL_凸多边形, 箭头2, 厚度 )矩阵出栈 ()停止创建列表 ()|
多边形拉伸 | | | |
形状类型 | 整数型 | | | | 多边形点 | 双精度小数型 | | | √ | 厚度 | 双精度小数型 | | | |
变量名 | 类 型 | 静态 | 数组 | 备 注 | 顶点数 | 整数型 | | | 循环变量 | 整数型 | | | 是否有颜色 | 逻辑型 | | |
顶点数 = 取数组下标 (多边形点, 1 )是否有颜色 = 取数组下标 (多边形点, 2 ) > 3 设置正面 ( #GL_顺时针 )开始画 (形状类型 )计次循环首 (顶点数, 循环变量 )如果真 (是否有颜色 )设置颜色 (多边形点 [循环变量 ] [4 ], 多边形点 [循环变量 ] [5 ], 多边形点 [循环变量 ] [6 ], 0 )设置点 (多边形点 [循环变量] [1], 多边形点 [循环变量] [2], 多边形点 [循环变量] [3] - 厚度)计次循环尾 ()停止画 ()设置正面 ( #GL_逆时针 )开始画 (形状类型 )计次循环首 (顶点数, 循环变量 )如果真 (是否有颜色 )设置颜色 (多边形点 [循环变量 ] [4 ], 多边形点 [循环变量 ] [5 ], 多边形点 [循环变量 ] [6 ], 0 )设置点 (多边形点 [循环变量] [1], 多边形点 [循环变量] [2], 多边形点 [循环变量] [3])计次循环尾 ()停止画 ()开始画 ( #GL_连续四边形 )计次循环首 (顶点数, 循环变量 )如果真 (是否有颜色 )设置颜色 (多边形点 [循环变量 ] [4 ], 多边形点 [循环变量 ] [5 ], 多边形点 [循环变量 ] [6 ], 0 )设置点 (多边形点 [循环变量] [1], 多边形点 [循环变量] [2], 多边形点 [循环变量] [3])设置点 (多边形点 [循环变量 ] [1 ], 多边形点 [循环变量 ] [2 ], 多边形点 [循环变量 ] [3 ] - 厚度 )计次循环尾 ()设置点 (多边形点 [1 ] [1 ], 多边形点 [1 ] [2 ], 多边形点 [1 ] [3 ])设置点 (多边形点 [1 ] [1 ], 多边形点 [1 ] [2 ], 多边形点 [1 ] [3 ] - 厚度 )停止画 ()|
画地图 | | | |
迷宫 | 字节型 | | | √ | 缩放比例 | 字节型 | | | | 中心横坐标 | 小数型 | | | | 中心纵坐标 | 小数型 | | | |
变量名 | 类 型 | 静态 | 数组 | 备 注 | x | 小数型 | | 3 | y | 小数型 | | 3 | 循环变量1 | 整数型 | | | 循环变量2 | 整数型 | | | 循环变量3 | 整数型 | | | 迷宫单元格 | 字节型 | | 8 | 墙面宽度 | 小数型 | | | 大小 | 双精度小数型 | | | 开始创建列表 ( #地图列表号, #GL_编译列表 )实际比例 = 0.1 ÷ 缩放比例 开始画 ( #GL_闭合线段 )设置颜色 (1, 1, 1, 0 )设置点 (-实际比例 ÷ 2, -实际比例 ÷ 2, 0 )设置点 (实际比例 ÷ 2, (实际比例 ÷ 2 ), 0 )设置点 (实际比例 ÷ 2, 实际比例 ÷ 2, 0 )设置点 ( (实际比例 ÷ 2 ), 实际比例 ÷ 2, 0 )停止画 ()墙面宽度 = (1 - #柱子宽度一半 × 2 ) × 0.1 ÷ 缩放比例 开始画 ( #GL_线段 )变量循环首 (1, 长, 1, 循环变量1 )变量循环首 (1, 宽, 1, 循环变量2 )x [1 ] = (循环变量1 - 长 ÷ 2 - 1 ) × 实际比例 ÷ 长 x [2 ] = (循环变量1 - 长 ÷ 2 - 1 ) × 实际比例 ÷ 长 x [3 ] = (循环变量1 - 长 ÷ 2 ) × 实际比例 ÷ 长 y [1 ] = (循环变量2 - 宽 ÷ 2 ) × 实际比例 ÷ 宽 y [2 ] = (循环变量2 - 宽 ÷ 2 - 1 ) × 实际比例 ÷ 宽 y [3 ] = (循环变量2 - 宽 ÷ 2 - 1 ) × 实际比例 ÷ 宽 计次循环首 (2, 循环变量3 )如果真 (迷宫 [循环变量1 ] [循环变量2 ] [循环变量3 ] = 0 )设置点 (x [循环变量3 ], y [循环变量3 ], 0 )设置点 (x [循环变量3 + 1 ], y [循环变量3 + 1 ], 0 )计次循环尾 ()变量循环尾 ()变量循环尾 ()停止画 ()大小 = 实际比例 ÷ 长 ÷ 2 矩阵入栈 ()坐标平移 (大小 - 实际比例 ÷ 2, 大小 - 实际比例 ÷ 2, 0 )开始画 ( #GL_凸多边形 )设置颜色 (0.24, 0.93, 0.6, 0 )设置点 (0, -大小, 0 )设置点 (-大小, -大小 × 2, 0 )设置点 (-大小 ÷ 2, -大小 × 2, 0 )设置点 (-大小 ÷ 2, -大小 × 3, 0 )设置点 (大小 ÷ 2, -大小 × 3, 0 )设置点 (大小 ÷ 2, -大小 × 2, 0 )设置点 (大小, -大小 × 2, 0 )停止画 ()矩阵出栈 ()矩阵入栈 ()坐标平移 (实际比例 ÷ 2 - 大小, 实际比例 ÷ 2 + 大小 × 3, 0 )开始画 ( #GL_凸多边形 )设置颜色 (0.85, 0.55, 0.57, 0 )设置点 (0, -大小, 0 )设置点 (-大小, -大小 × 2, 0 )设置点 (-大小 ÷ 2, -大小 × 2, 0 )设置点 (-大小 ÷ 2, -大小 × 3, 0 )设置点 (大小 ÷ 2, -大小 × 3, 0 )设置点 (大小 ÷ 2, -大小 × 2, 0 )设置点 (大小, -大小 × 2, 0 )停止画 ()矩阵出栈 ()停止创建列表 ()|
显示位置 | | | |
横向位置 | 整数型 | | | | 纵向位置 | 整数型 | | | | 地图横坐标 | 双精度小数型 | | | | 地图纵坐标 | 双精度小数型 | | | |
大小 = 实际比例 ÷ 长 ÷ 2 矩阵入栈 ()坐标平移 ( (横向位置 - 长 ÷ 2 ) × 实际比例 ÷ 长, (纵向位置 - 宽 ÷ 2 ) × 实际比例 ÷ 宽, 0 ) 坐标平移 (大小, 大小, 0 )开始画 ( #GL_四边形 )设置颜色 (1, 0, 0, 0 )设置点 (0, 大小, 0 )设置点 (-大小, 0, 0 )设置点 (0, -大小, 0 )设置点 (大小, 0, 0 )停止画 ()矩阵出栈 ()|
画天空盒 | | | |
横向纹理数量 | 整数型 | | | | 竖向纹理数量 | 整数型 | | | | 纵向纹理数量 | 整数型 | | | | 连续赋值 (-1, 点 [1 ] [1 ], 点 [2 ] [1 ], 点 [5 ] [1 ], 点 [6 ] [1 ]) 连续赋值 ( #地板长 + 1, 点 [3 ] [1 ], 点 [4 ] [1 ], 点 [7 ] [1 ], 点 [8 ] [1 ]) 连续赋值 (1, 点 [1 ] [3 ], 点 [4 ] [3 ], 点 [5 ] [3 ], 点 [8 ] [3 ]) 连续赋值 (-1 - #地板宽, 点 [2 ] [3 ], 点 [3 ] [3 ], 点 [6 ] [3 ], 点 [7 ] [3 ]) 连续赋值 ( #地板长 ÷ 横向纹理数量 × 竖向纹理数量, 点 [1 ] [2 ], 点 [2 ] [2 ], 点 [3 ] [2 ], 点 [4 ] [2 ]) 开始创建列表 ( #天空列表号, #GL_编译列表 )绑定纹理号 ( #GL_二维纹理, #天空图片纹理号 )开始画 ( #GL_四边形 )设置纹理映射坐标 (0, 纵向纹理数量 )设置点 (点 [1 ] [1 ], 点 [1 ] [2 ], 点 [1 ] [3 ])设置纹理映射坐标 (0, 0 )设置点 (点 [2 ] [1 ], 点 [2 ] [2 ], 点 [2 ] [3 ])设置纹理映射坐标 (横向纹理数量, 0 )设置点 (点 [3 ] [1 ], 点 [3 ] [2 ], 点 [3 ] [3 ])设置纹理映射坐标 (横向纹理数量, 纵向纹理数量 )设置点 (点 [4 ] [1 ], 点 [4 ] [2 ], 点 [4 ] [3 ])停止画 () 开始画 ( #GL_四边形 )设置纹理映射坐标 (0, 纵向纹理数量 )设置点 (点 [5 ] [1 ], 点 [5 ] [2 ], 点 [5 ] [3 ])设置纹理映射坐标 (0, 0 )设置点 (点 [6 ] [1 ], 点 [6 ] [2 ], 点 [6 ] [3 ])设置纹理映射坐标 (竖向纹理数量, 0 )设置点 (点 [2 ] [1 ], 点 [2 ] [2 ], 点 [2 ] [3 ])设置纹理映射坐标 (竖向纹理数量, 纵向纹理数量 )设置点 (点 [1 ] [1 ], 点 [1 ] [2 ], 点 [1 ] [3 ])停止画 () 开始画 ( #GL_四边形 )设置纹理映射坐标 (0, 竖向纹理数量 )设置点 (点 [5 ] [1 ], 点 [5 ] [2 ], 点 [5 ] [3 ])设置纹理映射坐标 (0, 0 )设置点 (点 [1 ] [1 ], 点 [1 ] [2 ], 点 [1 ] [3 ])设置纹理映射坐标 (横向纹理数量, 0 )设置点 (点 [4 ] [1 ], 点 [4 ] [2 ], 点 [4 ] [3 ])设置纹理映射坐标 (横向纹理数量, 竖向纹理数量 )设置点 (点 [8 ] [1 ], 点 [8 ] [2 ], 点 [8 ] [3 ])停止画 () 开始画 ( #GL_四边形 )设置纹理映射坐标 (0, 纵向纹理数量 )设置点 (点 [4 ] [1 ], 点 [4 ] [2 ], 点 [4 ] [3 ])设置纹理映射坐标 (0, 0 )设置点 (点 [3 ] [1 ], 点 [3 ] [2 ], 点 [3 ] [3 ])设置纹理映射坐标 (竖向纹理数量, 0 )设置点 (点 [7 ] [1 ], 点 [7 ] [2 ], 点 [7 ] [3 ])设置纹理映射坐标 (竖向纹理数量, 纵向纹理数量 )设置点 (点 [8 ] [1 ], 点 [8 ] [2 ], 点 [8 ] [3 ])停止画 () 开始画 ( #GL_四边形 )设置纹理映射坐标 (0, 竖向纹理数量 )设置点 (点 [2 ] [1 ], 点 [2 ] [2 ], 点 [2 ] [3 ])设置纹理映射坐标 (0, 0 )设置点 (点 [6 ] [1 ], 点 [6 ] [2 ], 点 [6 ] [3 ])设置纹理映射坐标 (横向纹理数量, 0 )设置点 (点 [7 ] [1 ], 点 [7 ] [2 ], 点 [7 ] [3 ])设置纹理映射坐标 (横向纹理数量, 竖向纹理数量 )设置点 (点 [3 ] [1 ], 点 [3 ] [2 ], 点 [3 ] [3 ])停止画 () 停止创建列表 ()大小 = 大小 ÷ 2 开始创建列表 ( #指南针列表号, #GL_编译列表 )启用功能 ( #GL_二维纹理 )启用功能 ( #GL_混合测试 )停用功能 ( #GL_深度测试 )混合测试 ( #GL_目标值颜色比例, 0 ) 绑定纹理号 ( #GL_二维纹理, #指南针蒙板图片纹理号 )设置颜色 (0, 0, 0, 1 )开始画 ( #GL_四边形 )设置纹理映射坐标 (0, 0 )设置点 (-大小, -大小, 0 )设置纹理映射坐标 (1, 0 )设置点 (大小, -大小, 0 )设置纹理映射坐标 (1, 1 )设置点 (大小, 大小, 0 )设置纹理映射坐标 (0, 1 )设置点 (-大小, 大小, 0 )停止画 ()混合测试 (1, 1 ) 绑定纹理号 ( #GL_二维纹理, #指南针图片纹理号 )设置颜色 (1, 1, 1, 1 )开始画 ( #GL_四边形 )设置纹理映射坐标 (0, 0 )设置点 (-大小, -大小, 0 )设置纹理映射坐标 (1, 0 )设置点 (大小, -大小, 0 )设置纹理映射坐标 (1, 1 )设置点 (大小, 大小, 0 )设置纹理映射坐标 (0, 1 )设置点 (-大小, 大小, 0 )停止画 ()停用功能 ( #GL_混合测试 )启用功能 ( #GL_深度测试 )停止创建列表 ()|
画游戏标题文字 | | | |
宽度 | 双精度小数型 | | | | 高度 | 双精度小数型 | | | |
宽度 = 宽度 ÷ 2 高度 = 高度 ÷ 2 开始创建列表 ( #文字列表号, #GL_编译列表 )启用功能 ( #GL_二维纹理 )启用功能 ( #GL_混合测试 )停用功能 ( #GL_深度测试 )混合测试 ( #GL_目标值颜色比例, 0 ) 绑定纹理号 ( #GL_二维纹理, #文字蒙板纹理号 )设置颜色 (0, 0, 0, 1 )开始画 ( #GL_四边形 )设置纹理映射坐标 (0, 0 )设置点 (-宽度, -高度, 0 )设置纹理映射坐标 (1, 0 )设置点 (宽度, -高度, 0 )设置纹理映射坐标 (1, 1 )设置点 (宽度, 高度, 0 )设置纹理映射坐标 (0, 1 )设置点 (-宽度, 高度, 0 )停止画 ()混合测试 (1, 1 ) 绑定纹理号 ( #GL_二维纹理, #文字纹理号 )设置颜色 (1, 1, 1, 1 )开始画 ( #GL_四边形 )设置纹理映射坐标 (0, 0 )设置点 (-宽度, -高度, 0 )设置纹理映射坐标 (1, 0 )设置点 (宽度, -高度, 0 )设置纹理映射坐标 (1, 1 )设置点 (宽度, 高度, 0 )设置纹理映射坐标 (0, 1 )设置点 (-宽度, 高度, 0 )停止画 ()停用功能 ( #GL_混合测试 )启用功能 ( #GL_深度测试 )停止创建列表 ()开始创建列表 ( #门列表号, #GL_编译列表 )矩阵入栈 ()坐标平移 (0.625, 0, ( #柱子宽度一半 ÷ 2 ) - 0.001 )绑定纹理号 ( #GL_二维纹理, #门纹理号 )开始画 ( #GL_四边形 )设置法向量 (0, 0, -1 × #墙壁高 ) 设置纹理映射坐标 (0, 1 )设置点 (0, #墙壁高, 0 )设置纹理映射坐标 (0, 0 )设置点 (0, 0, 0 )设置纹理映射坐标 (1, 0 )设置点 (-0.25, 0, 0 )设置纹理映射坐标 (1, 1 )设置点 (-0.25, #墙壁高, 0 )停止画 ()矩阵出栈 ()矩阵入栈 ()坐标平移 ( #地板长 - 0.625, 0, #柱子宽度一半 ÷ 2 - #地板宽 + 0.001 )绑定纹理号 ( #GL_二维纹理, #门纹理号 )开始画 ( #GL_四边形 )设置法向量 (0, 0, #墙壁高 ) 设置纹理映射坐标 (0, 1 )设置点 (0, #墙壁高, 0 )设置纹理映射坐标 (0, 0 )设置点 (0, 0, 0 )设置纹理映射坐标 (1, 0 )设置点 (0.25, 0, 0 )设置纹理映射坐标 (1, 1 )设置点 (0.25, #墙壁高, 0 )停止画 ()矩阵出栈 ()停止创建列表 ()文件号 = 打开文件 (文件名, #重写, )写出字节集 (文件号, 图片 )关闭文件 (文件号 )如果 (文件号 ≠ 0 )绑定纹理号 ( #GL_二维纹理, 纹理号 )载入位图数据 (文件名 )纹理控制 ( #GL_二维纹理, #GL_放大纹理滤波, #GL_线性 )纹理控制 ( #GL_二维纹理, #GL_缩小纹理滤波, #GL_线性滤镜 )信息框 (“创建纹理失败!”, 0, “错误”)文件名 = 取运行目录 () + #临时文件名 绑定纹理图片 (文件名, #地板, #地板图片纹理号 )绑定纹理图片 (文件名, #墙壁, #墙壁图片纹理号 )绑定纹理图片 (文件名, #天空, #天空图片纹理号 )绑定纹理图片 (文件名, #指南针, #指南针图片纹理号 )绑定纹理图片 (文件名, #指南针蒙板, #指南针蒙板图片纹理号 )绑定纹理图片 (文件名, #文字, #文字纹理号 )绑定纹理图片 (文件名, #文字蒙板, #文字蒙板纹理号 )绑定纹理图片 (文件名, #门, #门纹理号 ) 如果真 (取反 (删除文件 (文件名 )) )信息框 (“删除临时纹理文件失败!”, 0, “错误”) |
|