ソース情報
- リポジトリ
- Tresjs/tres
- ソースの最終更新活動
- 2026年7月15日 07:43
- 検出された SKILL.md の言語
- 英語
- スター
- 3,659
- フォーク
- 192
インストール方法
デフォルトでは、最初にソースを確認する Prompt が選択されています。直接コマンドに切り替えるか、ローカルコピーをダウンロードすることもできます。
ソースファイルを確認
インストールを決める前に、SKILL.md と SkillsMP に表示されている付属ファイルをお読みください。
メニュー
デフォルトでは、最初にソースを確認する Prompt が選択されています。直接コマンドに切り替えるか、ローカルコピーをダウンロードすることもできます。
インストールを決める前に、SKILL.md と SkillsMP に表示されている付属ファイルをお読みください。
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
直接コマンドでは確認用 Prompt が省略されます。実行前にソースを確認してください。
npx skills add https://github.com/Tresjs/tres --skill new-experimentコマンドは1行のまま表示されます。コピー前に横へスクロールして全体を確認してください。
ローカルで確認しますか?SkillsMP が現在取得できるファイルをダウンロードできます。
SOC 職業分類に基づく
SKILL.md を表示中
| name | new-experiment |
| description | Create a new experiment in TresJS Lab with all necessary files |
Create a new experiment in the TresJS Lab app with all necessary files and structure.
Parse arguments: Extract experiment name from $ARGUMENTS. If second argument is shaders or true, enable shader support.
Convert naming: Convert kebab-case to PascalCase for component naming (e.g., wobble-sphere → WobbleSphere).
Create markdown file: Create apps/lab/content/experiments/{experiment-name}.md with frontmatter:
---
title: {Experiment Title}
author: {your-github-username}
description: {Brief description}
thumbnail: /experiments/{experiment-name}.png
tags: []
date: {current-date}
lastUpdated: {current-date}
---
Create component directory: apps/lab/app/components/{experiment-name}/
Create index.global.vue:
<script setup lang="ts">
// TODO: Implement experiment logic
</script>
<template>
<TresCanvas>
<TresPerspectiveCamera :position="[0, 0, 10]" :look-at="[0, 0, 0]" />
<{ExperimentName}The{PascalCaseName} />
<OrbitControls />
<TheScreenshot />
</TresCanvas>
</template>
Create experiment component: The{PascalCaseName}.vue with basic structure.
If shaders enabled:
shaders/ directory inside component foldershaders/vertex.glsl:
uniform float uTime;
uniform vec2 uResolution;
void main() {
vec4 modelPosition = modelMatrix * vec4(position, 1.0);
vec4 viewPosition = viewMatrix * modelPosition;
vec4 projectedPosition = projectionMatrix * viewPosition;
gl_Position = projectedPosition;
}
shaders/fragment.glsl:
uniform float uTime;
void main() {
gl_FragColor = vec4(1.0, 0.0, 0.0, 1.0);
}
The{PascalCaseName}.vue:
<script setup lang="ts">
import vertexShader from './shaders/vertex.glsl';
import fragmentShader from './shaders/fragment.glsl';
const uniforms = {
uTime: { value: 0 },
uResolution: { value: new Vector2(window.innerWidth, window.innerHeight) },
}
</script>
<template>
<TresMesh>
<TresPlaneGeometry />
<TresShaderMaterial :uniforms="uniforms" :vertex-shader="vertexShader" :fragment-shader="fragmentShader" />
</TresMesh>
</template>
# Basic experiment without shaders
/new-experiment my-cool-effect
# Experiment with shader support
/new-experiment wobble-sphere shaders
WobbleSphereTheWobbleSphere)