OpenSource-Hub

editor

애플리케이션

pascalorg/editor

3D 건축 프로젝트를 생성하고 공유하는 에디터.

개요

Pascal Editor는 Web 기반의 3D 건축 편집기로, React Three Fiber와 WebGPU를 사용하여 구축되었습니다. 사용자는 건축 디자인 계획을 생성, 편집 및 공유할 수 있으며, 노드화된 씬 그래프와 실시간 렌더링을 지원합니다.

README 미리보기

# Pascal Editor\n\nA 3D building editor built with React Three Fiber and WebGPU.\n\n[](LICENSE)\n[](https://www.npmjs.com/package/@pascal-app/core)\n[](https://www.npmjs.com/package/@pascal-app/viewer)\n[](https://discord.gg/SaBRA9t2)\n[](https://x.com/pascal_app)\n\nhttps://github.com/user-attachments/assets/8b50e7cf-cebe-4579-9cf3-8786b35f7b6b\n\n\n\n## Repository Architecture\n\nThis is a Turborepo monorepo with three main packages:\n\n```\neditor-v2/\n├── apps/\n│   └── editor/          # Next.js application\n├── packages/\n│   ├── core/            # Schema definitions, state management, systems\n│   └── viewer/          # 3D rendering components\n```\n\n### Separation of Concerns\n\n| Package | Responsibility |\n|---------|---------------|\n| **@pascal-app/core** | Node schemas, scene state (Zustand), systems (geometry generation), spatial queries, event bus |\n| **@pascal-app/viewer** | 3D rendering via React Three Fiber, default camera/controls, post-processing |\n| **apps/editor** | UI components, tools, custom behaviors, editor-specific systems |\n\nThe **viewer** renders the scene with sensible defaults. The **editor** extends it with interactive tools, selection management, and editing capabilities.\n\n### Stores\n\nEach package has its own Zustand store for managing state:\n\n| Store | Package | Responsibility |\n|-------|---------|----------------|\n| `useScene` | `@pascal-app/core` | Scene data: nodes, root IDs, dirty nodes, CRUD operations. Persisted to IndexedDB with undo/redo via Zundo. |\n| `useViewer` | `@pascal-app/viewer` | Viewer state: current selection (building/level/zone IDs), level display mode (stacked/exploded/solo), camera mode. |\n| `useEditor` | `apps/editor` | Editor state: active tool, structure layer visibility, panel states, editor-specific preferences. |\n\n**Access patterns:**\n\n```typescript\n// Subscribe to state changes (React component)\nconst nodes = useScene((state) => state.nodes)\nconst levelId = useViewer((state) => st

FAQ (1)

문제 해결
Apple Silicon에서 Bun과 함께 Next.js를 실행할 때 'CPU doesn't support the bmi2 instructions' 패닉과 'Cannot find module lightningcss.darwin-x64.node' 오류를 해결하는 방법?

1. Next.js를 버전 16.2.2 이상으로 업그레이드하여 qfilter BMI2 패닉을 해결하세요. 2. lightningcss 아키텍처 불일치 문제의 경우, bun run dev 대신 bun --bun run dev로 개발 서버를 실행하여 Bun이 arm64용 올바른 네이티브 모듈을 사용하도록 강제하세요. 문제가 지속되면 Bun 버전 1.3.12+가 설치되어 있는지, Bun과 셸 모두 네이티브 arm64(에뮬레이트 Rosetta가 아님)로 실행 중인지 확인하고, .nextnode_modules를 제거한 후 bun install을 실행하여 클린 설치하세요.

원본 Issue #254