Three.js中文网 Three.js中文网
首页
免费视频
系统课 (opens new window)
  • Three.js基础课程
  • Vue3+Threejs 3D可视化
  • Threejs进阶课程
  • 展厅3D预览漫游
  • Threejs Shader
  • Blender建模基础
  • 文章
WebGPU教程
  • WebGL教程
  • ES GLSL着色器语言
  • WebGL教程(旧版本)
3D案例
  • 本站部署(打开快) (opens new window)
  • 原官网文档 (opens new window)
首页
免费视频
系统课 (opens new window)
  • Three.js基础课程
  • Vue3+Threejs 3D可视化
  • Threejs进阶课程
  • 展厅3D预览漫游
  • Threejs Shader
  • Blender建模基础
  • 文章
WebGPU教程
  • WebGL教程
  • ES GLSL着色器语言
  • WebGL教程(旧版本)
3D案例
  • 本站部署(打开快) (opens new window)
  • 原官网文档 (opens new window)
Web3D系统课程视频
  • 1. 声明一个变量
  • 2. 声明一个常量const
  • 3. 数据类型—基本类型
    • 4. 数据类型-向量
    • 5. 数据类型-矩阵
    • 6. if-else语句和for语句
    • 7. 内置变量
    • 8. attribute、uniform、varying
    • 9. 顶点和片元着色器
    • 10. 取样器sampler2D
    • 11. 内置函数
    • 12. 着色器计算精度precision
    • 13. 函数
    • 14. 结构体
    • 15. discard舍弃片元
    • 16. 数组
    • 17. 预处理
    • ES GLSL着色器语言
    郭隆邦
    2026-05-22
    目录

    3. 数据类型—基本类型

    # 数据类型—基本类型

    着色器语言GLSL的基本数据类型和C语言一样具有常见的整型数int、浮点数float和布尔值bool类型数据。

    关键字 数据类型 值
    bool 布尔值 布尔变量值为true或false
    int 整型数 值为整数,比如0,1,2,3...
    float 单精度浮点数 浮点数用小数点表示,比如0.6,3.14,2.8
    // bool关键字声明一个数据类型是布尔值的变量,并赋值为true
    bool lightBool = true;
    // 改变变量的值
    lightBool = false;
    // 着色器语言定义一个整形常量
    int count = 10;
    // 改变变量count的值
    count = 20;
    // 定义一个浮点数变量num,并赋值10.0
    float num = 10.0;
    

    -注意:编程的时候,如果浮点数刚好是0、1等整数值,要注意书写为0.0,1.0,不能省略点,如果直接写0、1等形式,系统会识别为整型数,进行运算的过程中,如果把数据类型搞错可能会报错。

    错误赋值方式

    float num = 1;
    

    正确赋值方式

    float num = 1.0;
    

    # 赋值

    声明可以一个变量,可以先声明后复制,也可以声明的时候直接赋值

    // 定义一个浮点数变量
    float num = 10.0;
    // 给变量赋值10.0
    num = 10.0;
    
    // 声明变量的同时赋值
    float num = 10.0;
    

    # 数据类型转换

    整型数int、浮点数float、布尔值bool三种不同的数据值可以相互转化,把一个类型转化为另一个类型通过相应的内置函数int()、float()、bool()实现。

    转化 函数 规则
    浮点数转整型数 int(10.1) 直接把浮点数部分去掉,10.1转化为10
    整型数转浮点数 float(10) 整型数直接转化为浮点数10.0
    数子转布尔值 bool(10) 0或0.0转化为false,非0或非0.0转化为true
    布尔值转整型数 int(true) false转化为0,true转化为1
    布尔值转浮点数 float(true) false转化为0.0,true转化为1.0
    //声明一个整型数变量num,并赋值1
    int num = 1;
    // 整型数num转化为浮点数fnum
    float fnum = float(num);
    
    //声明一个浮点数变量fnum,并赋值1.0
    float fnum = 1.08;
    // 浮点数转化整型数
    int inum = int(num);//转化结果1
    
    2. 声明一个常量const
    4. 数据类型-向量

    ← 2. 声明一个常量const 4. 数据类型-向量→

    Theme by Vdoing | Copyright © 2016-2026 豫ICP备16004767号-2
    • 跟随系统
    • 浅色模式
    • 深色模式
    • 阅读模式