Nygrate — 基础
发布: (2025年12月18日 GMT+8 10:43)
5 min read
原文: Dev.to
Source: Dev.to

Source: …
1. 背景配置 (Background)
/* Cor de fundo */
.ambient/ background+type = { color : #000 }
/* Imagem por URL */
.ambient/ background+image = { url : https://image/ }
/* Imagem por arquivo */
.ambient/ background+image = { file : 0/caminho1/image.png }
/* Auto‑aplicação ao container1 (pode ser URL, imagem ou HEX) */
.ambient/ background+auto = { container1 : #000 }
高级属性
.ambient/ background+type = { color : #000 } >
size: cover +
position: center +
repeat: no
| 属性 | 可选值 | 描述 |
|---|---|---|
| size | cover – 覆盖整个屏幕,必要时裁剪(不失真) fit – 完全显示图像(不失真) stretch – 拉伸图像,可能失真 | 定义图像如何占据空间 |
| position | top, bottom, center, left, right, out | 定义图像在容器内的位置 |
| repeat | no – 不重复 yes – 正常重复 5 – 重复 5 次 fit – 重复且不裁剪 | 定义图像的重复方式 |
大小示例
50% → 覆盖屏幕的 50 %
top.50% → 覆盖 50 % 并对齐顶部
left.50% → 覆盖 50 % 并对齐左侧
right.50% → 覆盖 50 % 并对齐右侧
bottom.50% → 覆盖 50 % 并对齐底部
2. 按钮的渐变
/* Metade vermelha, metade imagem */
.button/ MeuBotao color+type {
gradient : 50x50 % #ff0000 + url
}
/* Usando URL */
.button/ MeuBotao color+type {
gradient : 50x50 % #ff0000 + from/.box/MinhaCaixa+url
}
/* Usando cor de outro elemento */
.button/ MeuBotao color+type {
gradient : 50x50 % #ff0000 + from/.box/MinhaCaixa+color
}
3. 主要文件
| 文件 | 功能 |
|---|---|
index.ny | 定义主要的 Engine |
gen.qogc | 生成 量子 文件 |
4. 系统变量操作
创建 (c/create)
.c/create
c/object = cube :
if exist e/animation else e/null /* → se existir, executa animação; senão, nada */
.c/create
c/object = sphere
检查 (c/check)
.c/check
c/sphere : e/animation /* → verifica se a esfera existe e, se sim, anima */
不在 create 与 check 之间切换的替代方案
.Creata/create
Creata/object = cube /*
.Chequer/check
Chequer/sphere /*
5. 量子脚本(示例)
atomo.qogc ↓
.el+auto/ atomo >
%1.neutron
%1.proton
%1.eletron /*
/* Hidrogênio (1 próton, 1 elétron, 0 nêutron) */
.el+auto/ hidrogenio >
%1.neutron
%1.proton
%0.eletron /*
c/object = cube : as.hidrogenio >
377_ 8x190 /* → cria um cubo feito de hidrogênio */
对象定位
.L/ hidrogenio :
-0 -0 -0 0 /* Z, X, Y, P */
| 轴 | 含义 |
|---|---|
| Z | 深度 |
| X | 宽度 |
| Y | 高度 |
| P | 层(渲染顺序 – P = 1 位于 P = 5 之后) |
6. 将立方体变为物理实体
/* index.ny */
c/object = cube : /Eva /*
.ambient/ background+type = { color : #000 } /* → 黑色真空中的立方体 */
定义尺寸和属性
universe.qogc ↓
Eva.size = c/ID : GEWOqbWl2 >
y.x.z = eSize > 5 : num+type cm /
Eva.density = c/ID auto >
y.x.z = eSize + hidrogenio ÷ mass /
Eva.mass = eSize × hidrogenio /* → 自动计算 */
注意: 将
Eva定义为 5 cm 的氢会使其保持气体状态,膨胀并蒸发。要将其变为 固体,需要编程原子链(创建.OBJ元素并定义材料区域)。
原子定义示例
hidrogenio = a.('H', pos=[ in[0, 0, 0]out ], cell=auto) /*
注意: 直接修改已有元素会影响 Nygrate 的 整个宇宙。仅在元素尚不存在时才创建新元素。
7. 手动体积计算
volume_atomo = (4/3) × π × (raio_hidrogenio ^ 3)
8. Nygrate 的能力
- 3D 渲染 视觉和图形
- 流程自动化
- 数据分析与生成
- 界面创建
- 文件操作(脚本、网页、应用、图像、视频等)
- 音频集成
9. 声音生成
freq = frequency.in+type : Hz >
freq.to.1 +
freq.to.2 = 200 >
time = duration.in+type : S >
time = 5 +
volume = 1.0 /* opcional */
for time in amplitude time.[s/100] : steps >
now = freq.1 then freq.2 /* → combina as duas frequências */
gerarSom(now, 0.01, amplitude) /* executa o som */
结论
Nygrate 提供了一个 完全自动化 的环境,其中每一次更改都可能产生全局影响。使用时请谨慎,尤其是在修改已有元素时,因为更改可能会在整个模拟宇宙中传播。
# rarSom()
Os sons são gerados configurando a taxa de energia que um emissor transmite, por exemplo, colocando mais carga no ímã das caixas de som, fazendo‑as vibrar com mais força.
Grande parte do processo é **automático**, sendo este um exemplo básico.
No entanto, o ajuste pode ser feito manualmente de forma muito mais avançada.