英语法语西班牙语

Ad


OnWorks 网站图标

cgc - 云端在线

通过 Ubuntu Online、Fedora Online、Windows 在线模拟器或 MAC OS 在线模拟器在 OnWorks 免费托管服务提供商中运行 cgc

这是可以使用我们的多个免费在线工作站之一在 OnWorks 免费托管服务提供商中运行的命令 cgc,例如 Ubuntu Online、Fedora Online、Windows 在线模拟器或 MAC OS 在线模拟器

程序:

您的姓名


CGC - cg 编译器驱动程序

概要


cgc [选项] 文件 ...

商品描述


CGC 是独立的 Cg 编译器,可将 Cg 或 GLSL 程序转换为 OpenGL 或
DirectX 着色器汇编代码,或 OpenGL 或 DirectX 着色语言代码。

配置


基础 选项

-条目 姓名
设置要编译的着色器的入口函数。 默认为“主要”。

-o 文件
设置要写入的输出文件。 默认输出为“stdout”。

-l 文件
设置列表文件,其中写入错误和警告消息。 默认为
“标准”。

-轮廓 姓名
选择目标配置文件,指定要生成的着色器语言。

-配置文件选择 选择1,选择2,...
-po 选择1,选择2,...
设置一个或多个配置文件特定选项。

-禁止驶入
设置只检查模式,不编译着色器,但编译输入文件中的所有代码
检查语法正确性。

语言 选项

-ogsl
将源语言设置为 GLSL。

-眼睛
将源语言设置为 OpneGL/ES GLSL。

-严格的
-nostrict
启用或禁用严格的类型检查,其中最有问题的构造将
标记为警告。

-glsl错误
与“-strict”类似,但此外,不可移植的 GLSL 结构将被标记为错误。

-警告
禁用所有警告。

-警告=不,不,...
禁用一个或多个特定编号的警告。

-fx
-nofx
启用或禁用 FX 解析模式,其中识别 FX 关键字。 默认为开
在 Cg 模式下和在 GLSL 模式下关闭。

-nostdlib
禁用标准库。

代码 附加选项

-快速数学
-没有快速数学
启用或禁用可能会改变/失去低位精度的优化,例如
作为关联变换,如“(a + b) + c”而不是“a + (b + c)”。 默认是
“-fastmath”。

-快速精度
-无快速精度
启用或禁用优化以低于指定的精度执行操作
当结果稍后转换为较低的精度或操作数是
最初的精度较低。 默认值为“-nofastprecision”。

-最佳精度
始终以最佳的精度做事; 只使用较低精度的操作
如果没有差异的可能性。 意味着“-nofastmath”和
“-nofastprecision”。

-展开全部|无|计数=N
控制循环展开。 “-unroll all”将强制展开所有可以
展开,而“-unroll none”将阻止展开,除非代码不能否则
在当前配置文件中生成(因此它不会影响不
支持循环)。 "展开计数=N " 将展开循环,如果估计
结果代码小于 N 指示。 估计不考虑
展开后可能会做进一步的优化,所以它可能相当
不准确的。

-内联所有|无|计数=N
控制函数内联。 设置“-inline none”将另外禁用内联
带有显式“内联”关键字的函数,否则总是内联的。
设置“-inline count=0”将有效地禁用所有函数的内联
没有明确的“内联”关键字。

-ifcvt 全部|无|计数=N
控制 if 转换(用条件替换小的 if/else 块
作业)。

-ON 设置编译器的优化级别,从 0(最低)到 3(最高)。 更高
值可能会产生更好的代码,并会导致编译时间增加。 默认是
“-O1”。

-循环限制 N
假设循环编译器无法确定数量的上限
迭代可以循环多达 N 迭代。 这可能需要生成额外的代码
对于某些配置文件中的此类循环。

-d3d
生成与 Direct3D 规范兼容的代码。

-MaxInstInBasicBlock N
打破基本块后 N 指示。 这对局部优化有影响
不跨越基本块边界,并可能避免在
由于基本块中的非线性算法,存在巨大的基本块
大小。

-最大卷数 N
已弃用。 不要展开循环超过 N 迭代。 使用 -unroll 选项
相反,它提供了更好的细粒度控制。

预处理器 附加选项

-DMACRO[=VALUE]
设置预处理器宏。 如果 VALUE 未指定,默认为 1。

-I目录
在“#include”文件的搜索路径末尾添加一个目录。 默认的
搜索路径为空。

-E 不编译,只对输入进行预处理。

-P 使用“-E”,禁止在输出中生成“#line”指令。

-C 使用“-E”,在输出中保留注释。

-MG 忽略找不到的“#include”文件,而不是发出错误。

-M
-MM
-医学博士
-MMD
-MP
-MF 文件
-公吨 目标
-MQ 目标
生成关于“#include”d 文件的依赖信息。 这些选项旨在
与“gcc”的选项兼容。

其他 附加选项

-安静的
-q 抑制所有“噪音”输出(版权通知,指示哪些文件正在被
编译等)。 使用 -o 和 -l,应该不会产生任何输出。

-无代码
抑制最终代码生成。 实际上会一直运行通过编译器
(因此应诊断存在的任何错误),但不产生任何实际输出代码。

-v
- 版
将编译器版本信息打印到列表。

-h 将简短选项帮助摘要打印到标准输出并退出。

-救命
打印更长的选项帮助摘要到标准输出,包括所有支持的配置文件和
配置文件选项,然后退出。

-类型 类型定义
为变量设置覆盖类型绑定。

-类型文件 文件
从文件中读取变量的覆盖类型绑定。

-转储输入绑定 文件
将所有变量的类型绑定转储到文件。 该文件可能会被传递回
带有“-typefile”的编译器。

调试 选项

-调试
启用“调试”内置函数以立即中止着色器的操作
输出一个值。

-调试器
类似于“-debug”,除了着色器不会中止; 相反,它继续并输出
调用的最后一个“调试”函数的值。

-调试默认值=折扣值
与“-debug”类似,除非未达到“debug”调用,否则输出将设置为
指定值而不是着色器通常计算的值。

- 已弃用
对使用的任何已弃用功能发出错误而不是警告。

PROFILES


A 轮廓 指定 cg 编译器的输出语言(着色器程序集
方言或阴影语言)。 每个配置文件都有自己的一组 轮廓 选项 这样可以
为它设置,尽管许多相关的配置文件具有相似或相同的选项。 简介
可以按程序类型、API 或 GPU 生成进行分组。

DirectX 配置文件
ds_5_0、gs_4_0、gs_5_0、hlslf、hlslv、hs_5_0、ps_1_1、ps_1_2、ps_1_3、ps_2_0、ps_2_x、
ps_3_0, ps_4_0, ps_5_0, vs_1_1, vs_2_0, vs_2_x, vs_3_0, vs_4_0, vs_5_0

OpenGL 配置文件
arbfp1, arbvp1, fp20, fp30, "fp30unlimited", fp40, "fp40unlimited", glslf, glslg,
glslv、gp4fp、gp4gp、gp4vp、gp5fp、gp5gp、gp5tcp、gp5tep、gp5vp、vp20、vp30、vp40

片段配置文件
arbfp1, fp20, fp30, "fp30unlimited", fp40, "fp40unlimited", glslf, gp4fp, gp5fp,
hlslf、ps_1_1、ps_1_2、ps_1_3、ps_2_0、ps_2_x、ps_3_0、ps_4_0、ps_5_0

几何轮廓
glslg、gp4gp、gp5gp、gs_4_0、gs_5_0

顶点轮廓
arbvp1、glslv、gp4vp、gp5vp、hlslv、vp20、vp30、vp40、vs_1_1、vs_2_0、vs_2_x、vs_3_0、
vs_4_0、vs_5_0

GeForce 3/4 系列配置文件
FP20、VP20

GeForce 5 系列配置文件
FP30、VP30

GeForce 6/7 系列配置文件
FP40、VP40

GeForce 8/9/100/200/300 系列,OpenGL 3.x Quadro 配置文件
gp4fp、gp4gp、gp4vp

GeForce 400 系列,OpenGL 4.x Quadro 配置文件
gp5fp、gp5gp、gp5tcp、gp5tep、gp5vp

本人简介 选项

这是所有配置文件及其相应配置文件选项的完整列表

arbfp1
目标 ARB_片段_程序 OpenGL扩展

"-po" "ARB_draw_buffers"
使用 ARB_draw_buffers 多个渲染缓冲区目标 (MRT) 的选项。 这是
默认值

"-po" "ATI_draw_buffers"
使用 ATI_draw_buffers 多个渲染缓冲区目标 (MRT) 的选项。

"-po" "MaxDrawBuffers="N
设置渲染缓冲区目标的最大数量。 默认为 1

"-po" "MaxLocalParams="N
设置可用的统一参数槽的最大数量。 默认值为 32

"-po" "MaxTexIndirections="N
设置输出程序中允许的最大纹理间接数。
默认值为1024

"-po" "NumInstructionSlots="N
设置输出程序中的最大指令数。 默认值为 1024

"-po" "NumMathInstructionSlots="N
设置输出程序中非纹理指令的最大数量。
默认值为1024

"-po" "NumTemps="N
设置输出程序中 TEMP 寄存器的最大数量。 默认值为 32

"-po" "NumTexInstructionSlots="N
设置输出程序中纹理指令的最大数量。 默认是
1024

abvp1
目标 ARB_顶点_程序 OpenGL扩展

"-po" "MaxAddressRegs="N
设置输出程序中 ADDRESS 寄存器的最大数量。 默认为 1

“-po”“最大指令=”N
设置输出程序中的最大指令数。 默认值为 1024

"-po" "MaxLocalParams="N
设置可用的统一参数槽的最大数量。 默认值为 96

"-po" "NumTemps="N
设置输出程序中 TEMP 寄存器的最大数量。 默认值为 32

"-po" "PosInv"
为 POSITION 输出生成位置不变代码(与固定函数相同)

fp20
目标 NV_register_combiners2NV_texture_shader OpenGL 扩展

fp30
目标 NV_片段_程序 OpenGL扩展

"-po" "NumInstructionSlots="N
设置输出程序中的最大指令数。 默认值为 256

"-po" "NumTemps="N
设置输出程序中的最大临时数。 默认值为 32

“fp30无限”
与 fp30 相同,但取消了对寄存器和指令的各种硬件限制

"-po" "NumInstructionSlots="N
设置输出程序中的最大指令数。 默认值为 4194304

"-po" "NumTemps="N
设置输出程序中的最大临时数。 默认值为 512

fp40
目标 NV_fragment_program2 OpenGL扩展

"-po" "appleKilWAR"
在 OSX-tiger 实现中使用 KIL 指令解决各种错误
NV_fragment_program2

"-po" "ARB_draw_buffers"
使用 ARB_draw_buffers 多个渲染缓冲区目标 (MRT) 的选项。 这是
默认值

"-po" "ATI_draw_buffers"
使用 ATI_draw_buffers 多个渲染缓冲区目标 (MRT) 的选项。

"-po" "MaxLocalParams="N
设置可用的统一参数槽的最大数量。 默认为无限

"-po" "NumInstructionSlots="N
设置输出程序中的最大指令数。 默认是
无穷

"-po" "NumTemps="N
设置输出程序中 TEMP 寄存器的最大数量。 默认是
无穷

"-po" "OutColorPrec="N
If N 是 3 或 4,强制输出到 fp16 精度。 如果 N 是2,强制输出到fp32
精确。

“fp40无限”
与 fp40 相同,但取消了对寄存器和指令的各种硬件限制

"-po" "appleKilWAR"
在 OSX-tiger 实现中使用 KIL 指令解决各种错误
NV_fragment_program2

"-po" "ARB_draw_buffers"
使用 ARB_draw_buffers 多个渲染缓冲区目标 (MRT) 的选项。 这是
默认值

"-po" "ATI_draw_buffers"
使用 ATI_draw_buffers 多个渲染缓冲区目标 (MRT) 的选项。

"-po" "MaxLocalParams="N
设置可用的统一参数槽的最大数量。 默认值为 1024

"-po" "NumInstructionSlots="N
设置输出程序中的最大指令数。 默认值为 4194304

"-po" "NumTemps="N
设置输出程序中 TEMP 寄存器的最大数量。 默认值为 512

"-po" "OutColorPrec="N
If N 是 3 或 4,强制输出到 fp16 精度。 如果 N 是2,强制输出到fp32
精确。

“通用的”
以不可执行的格式生成程序的转储

glslf、glslg 和 glslv
针对 OpenGL 着色语言 (GLSL) v1.10。 glslf 目标片段程序
而 glslv 以顶点程序为目标

版本=VAL
要定位的 GLSL 版本。 支持的版本是 100, 110, 120, 130, 140150.

用户TexCoord
使用用户定义的变化而不是 gl_TexCoord.

ATI_draw_buffers
使用 ATI_draw_buffers 地铁延长线。

EXT_gpu_shader4
使用 EXT_gpu_shader4 有用的扩展。

GP4FP
目标 NV_gpu_program4NV_fragment_program4 OpenGL 扩展。

"-po" "fastimul"
假设整数乘法输入最多有 24 个有效位。

"-po" "NV_shader_buffer_load"
使用 NV_shader_buffer_load OpenGL 扩展。

"-po" "NV_parameter_buffer_object2"
使用 NV_parameter_buffer_object2 OpenGL 扩展。

"-po" "PaBO2"
使用 NV_parameter_buffer_object2 OpenGL 扩展。

"-po" "ARB_draw_buffers"
使用 ARB_draw_buffers 多个渲染缓冲区目标 (MRT) 的选项。 这是
默认值

"-po" "ATI_draw_buffers"
使用 ATI_draw_buffers 多个渲染缓冲区目标 (MRT) 的选项。

"-po" "pixel_center_integer"
使用整数像素中心。

"-po" "origin_upper_left"
使用左上角像素原点。

GP4GP
目标 NV_gpu_program4NV_几何_程序4 OpenGL 扩展。

"-po" "点"
"-po" "LINE"
"-po" "LINE_ADJ"
"-po" "三角形"
"-po" "TRIANGLE_ADJ"
设置几何程序的输入基元类型

"-po" "POINT_OUT"
"-po" "LINE_OUT"
"-po" "TRIANGLE_OUT"
设置几何程序的输出基元类型

“-po”“顶点=”N
设置几何程序输出的顶点数

GP4VP
目标 NV_gpu_program4NV_vertex_program4 OpenGL 扩展。

"-po" "PosInv"
为 POSITION 输出生成位置不变代码(与固定函数相同)

GP5FP
目标 NV_gpu_program5 OpenGL 扩展。

"-po" "fastimul"
假设整数乘法输入最多有 24 个有效位。

"-po" "NV_shader_buffer_load"
使用 NV_shader_buffer_load OpenGL 扩展。

"-po" "NV_parameter_buffer_object2"
使用 NV_parameter_buffer_object2 OpenGL 扩展。

"-po" "PaBO2"
使用 NV_parameter_buffer_object2 OpenGL 扩展。

"-po" "ARB_draw_buffers"
使用 ARB_draw_buffers 多个渲染缓冲区目标 (MRT) 的选项。 这是
默认值

"-po" "ATI_draw_buffers"
使用 ATI_draw_buffers 多个渲染缓冲区目标 (MRT) 的选项。

"-po" "pixel_center_integer"
使用 ARB_fragment_coord_conventions 用于指定整数像素的 OpenGL 扩展
中心。

"-po" "origin_upper_left"
使用 ARB_fragment_coord_conventions 用于指定左上角的 OpenGL 扩展
像素原点。

"-po" "NV_early_fragment_tests"
在片段程序调用之前执行深度和模板测试。

GP5GP
目标 NV_gpu_program5 OpenGL 扩展。

"-po" "点"
"-po" "LINE"
"-po" "LINE_ADJ"
"-po" "三角形"
"-po" "TRIANGLE_ADJ"
设置几何程序的输入基元类型

"-po" "POINT_OUT"
"-po" "LINE_OUT"
"-po" "TRIANGLE_OUT"
设置几何程序的输出基元类型

“-po”“顶点=”N
设置几何程序输出的顶点数

GP5TCP
目标 NV_曲面细分_程序NV_gpu_program5 OpenGL 扩展。

GP5TEP
目标 NV_曲面细分_程序NV_gpu_program5 OpenGL 扩展。

GP5VP
目标 NV_gpu_program5 OpenGL 扩展。

"-po" "PosInv"
为 POSITION 输出生成位置不变代码(与固定函数相同)

hlslf hlslv 回复
针对 Microsoft 高级着色语言 (HLSL)。 hlslf 目标像素程序
而 hlslv 以顶点程序为目标

ps_1_1 ps_1_2 ps_1_3
针对 DirectX 像素程序

"-po" "MaxPixelShaderValue="N
像素着色器中可表示的最大绝对值。 默认值为 1。

ps_2_0 ps_2_x
针对 DirectX 像素程序

"-po" "MaxDrawBuffers="N
设置渲染缓冲区目标的最大数量。 默认为 1

"-po" "NumInstructionSlots="N
设置输出程序中的最大指令数。 默认为 96 或
512

"-po" "NumTemps="N
设置输出程序中的最大临时数。 默认为 12 或 32

ps_3_0
针对 DirectX 像素程序

"-po" "MaxDrawBuffers="N
设置渲染缓冲区目标的最大数量。 默认为 1

"-po" "MaxLocalParams="N
设置可用的统一参数槽的最大数量。 默认值为 224

"-po" "NumInstructionSlots="N
设置输出程序中的最大指令数。 默认值为 32768

"-po" "NumTemps="N
设置输出程序中的最大临时数。 默认值为 32

"-po" "OutColorPrec="N
If N 是 3 或 4,强制输出到 fp16 精度。 如果 N 是2,强制输出到fp32
精确。

vp20
目标 NV_顶点_程序 OpenGL扩展

"-po" "MaxLocalParams="N
设置可用的统一参数槽的最大数量。 默认值为 96

"-po" "PosInv"
为 POSITION 输出生成位置不变代码(与固定函数相同)

vp30
目标 NV_vertex_program2 OpenGL扩展

"-po" "MaxLocalParams="N
设置可用的统一参数槽的最大数量。 默认值为 256

"-po" "PosInv"
为 POSITION 输出生成位置不变代码(与固定函数相同)

vp40
目标 NV_vertex_program3 OpenGL扩展

"-po" "MaxAddressRegs="N
设置输出程序中 ADDRESS 寄存器的最大数量。 默认为 2

“-po”“最大指令=”N
设置输出程序中的最大指令数。 默认值为 2048

"-po" "MaxLocalParams="N
设置可用的统一参数槽的最大数量。 默认值为 544

"-po" "NumTemps="N
设置输出程序中 TEMP 寄存器的最大数量。 默认值为 32

"-po" "PosInv"
为 POSITION 输出生成位置不变代码(与固定函数相同)

vs_1_1
目标 DirectX 顶点程序

"-po" "dcls"
输出 dx9 样式的 dcls 语句

"-po" "MaxLocalParams="N
设置可用的统一参数槽的最大数量。 默认值为 96

"-po" "NumInstructionSlots="N
设置输出程序中的最大指令数。 默认值为 128

"-po" "NumTemps="N
设置输出程序中的最大临时数。 默认值为 12

vs_2_0 vs_2_x
目标 DirectX 顶点程序

"-po" "dcls"
输出 dx9 样式的 dcls 语句

"-po" "MaxLocalParams="N
设置可用的统一参数槽的最大数量。 默认值为 256

"-po" "NumInstructionSlots="N
设置输出程序中的最大指令数。 默认值为 256

"-po" "NumTemps="N
设置输出程序中的最大临时数。 默认值为 12

vs_3_0
目标 DirectX 顶点程序

"-po" "dcls"
输出 dx9 样式的 dcls 语句

"-po" "MaxLocalParams="N
设置可用的统一参数槽的最大数量。 默认值为 256

"-po" "NumInstructionSlots="N
设置输出程序中的最大指令数。 默认值为 32768

"-po" "NumTemps="N
设置输出程序中的最大临时数。 默认值为 32

环境


使用 onworks.net 服务在线使用 cgc


免费服务器和工作站

下载 Windows 和 Linux 应用程序

  • 1
    AstrOrz播放器
    AstrOrz播放器
    AstrOrz Player 是一款免费的媒体播放器
    软件,部分基于 WMP 和 VLC。 这
    播放器采用极简风格,带有
    十多个主题色,还可以
    B ...
    下载 AstrOrzPlayer
  • 2
    电影启动器
    电影启动器
    Kodi Movistar+ TV 是 XBMC/ 的 ADDON
    Kodi 许可分配器
    IPTV服务解码器
    Movistar Integrado en uno de los
    媒体中心马...
    下载 movistartv
  • 3
    代码::块
    代码::块
    Code::Blocks 是一个免费的、开源的、
    跨平台 C、C++ 和 Fortran IDE
    专为满足最苛刻的需求而打造
    它的用户。 它的设计非常
    扩展...
    下载代码::Blocks
  • 4
    之中
    之中
    中间或高级 Minecraft 界面
    和数据/结构跟踪是一种工具
    显示 Minecraft 的概览
    世界,而无需实际创造它。 它
    能够 ...
    下载烟雨
  • 5
    系统2
    系统2
    MSYS2 是一组工具和
    图书馆为您提供
    易于使用的建筑环境,
    安装和运行本机 Windows
    软件。 它连...
    下载 MSYS2
  • 6
    libjpeg-turbo
    libjpeg-turbo
    libjpeg-turbo 是一个 JPEG 图像编解码器
    使用 SIMD 指令(MMX、SSE2、
    NEON、AltiVec)加速基线
    JPEG 压缩和解压
    x86、x8...
    下载 libjpeg-turbo
  • 更多 ”

Linux 命令

Ad