Needle Engine
  • README
  • Code Of Conduct
  • HOW TO
  • documentation
    • SUMMARY
    • _backlog-mermaid
    • _backlog
    • _meta-test
    • Automatic Component Generation
    • Needle Core Components
    • How To Debug
    • Deployment and Optimization
    • embedding
    • Everywhere Actions
    • Example Projects ✨
    • Exporting Assets, Animations, Prefabs, Materials, Lightmaps...
    • Questions and Answers (FAQ) 💡
    • Feature Overview
    • This page has been moved: continue here
    • getting-started
    • Frameworks, Bundlers, HTML
    • index
    • Additional Modules
    • Networking
    • Needle Engine Project Structure
    • Samples Projects
    • Scripting Examples
    • Creating and using Components
    • Live
    • Live
    • About
    • Live
    • Live
    • Live
    • Live
    • Support, Community & AI
    • Technical Overview
    • Testimonials
    • Testing on local devices
    • Using Needle Engine directly from HTML
    • vision
    • VR & AR (WebXR)
    • blender
      • Needle Engine for Blender
    • cloud
      • Needle Cloud
    • custom-integrations
      • index
    • getting-started
      • Scripting Introduction for Unity Developers
      • Getting Started & Installation
      • Scripting in Needle Engine
    • reference
      • needle.config.json
      • <needle-engine> Configuration
      • @serializable and other decorators
    • three
      • index
    • unity
      • Editor Sync
      • Needle Engine for Unity
    • lang
      • de
        • 404
        • SUMMARY
        • Automatische Komponenten-Generierung
        • Needle-Kernkomponenten
        • Debugging
        • Bereitstellung und Optimierung
        • embedding
        • Everywhere Actions
        • Beispielprojekte ✨
        • Assets, Animationen, Prefabs, Materialien, Lightmaps exportieren...
        • Fragen und Antworten (FAQ) 💡
        • Funktionsübersicht
        • Diese Seite wurde verschoben: hier fortfahren
        • getting-started
        • Frameworks, Bundler, HTML
        • index
        • Zusätzliche Module
        • Netzwerkfunktionen
        • Needle Engine Projektstruktur
        • Beispielprojekte
        • Scripting Beispiele
        • Erstellen und Verwenden von Komponenten
        • Live
        • Live
        • Über
        • Live
        • Live
        • Live
        • Live
        • Support und Community
        • Technischer Überblick
        • Erfahrungsberichte
        • Testen auf lokalen Geräten
        • Needle Engine direkt aus HTML verwenden
        • vision
        • VR & AR (WebXR)
        • blender
          • Needle Engine für Blender
        • cloud
          • Needle Cloud
        • custom-integrations
          • index
        • getting-started
          • Einführung in das Scripting für Unity-Entwickler
          • Erste Schritte & Installation
          • Scripting in Needle Engine
        • reference
          • needle.config.json
          • <needle-engine> Konfiguration
          • @serializable und andere Decorators
        • three
          • index
        • unity
          • Editor Synchronisierung
          • Needle Engine für Unity
      • es
        • SUMMARY
        • Generación Automática de Componentes
        • Componentes principales de Needle
        • Cómo Depurar
        • Despliegue y optimización
        • embedding
        • Acciones Everywhere
        • Proyectos de Ejemplo ✨
        • Exportación de Assets, Animaciones, Prefabs, Materiales, Lightmaps...
        • Preguntas Frecuentes (FAQ) 💡
        • Resumen de Características
        • Esta página ha sido movida: continúe aquí
        • getting-started
        • Frameworks, Bundlers, HTML
        • index
        • Módulos Adicionales
        • Redes
        • Estructura de Proyecto de Needle Engine
        • Proyectos de ejemplo
        • Ejemplos de scripting
        • Crear y usar Components
        • En vivo
        • En Vivo
        • Acerca de
        • En vivo
        • En vivo
        • En vivo
        • En vivo
        • Soporte y Comunidad
        • Resumen técnico
        • Testimonios
        • Testing on local devices
        • Usando Needle Engine directamente desde HTML
        • vision
        • VR & AR (WebXR)
        • blender
          • Needle Engine para Blender
        • cloud
          • Needle Cloud
        • custom-integrations
          • index
        • getting-started
          • Introducción al Scripting para Desarrolladores de Unity
          • Primeros pasos e instalación
          • Scripting in Needle Engine
        • reference
          • needle.config.json
          • Configuración de <needle-engine>
          • @serializable y otros decoradores
        • three
          • index
        • unity
          • Editor Sync
          • Needle Engine para Unity
      • fr
        • SUMMARY
        • Génération automatique de composants
        • Composants principaux de Needle
        • Comment déboguer
        • Déploiement et Optimisation
        • embedding
        • Everywhere Actions
        • Exemples de Projets ✨
        • Exporter des Assets, des Animations, des Prefabs, des Matériaux, des Lightmaps...
        • Questions et Réponses (FAQ) 💡
        • Aperçu des fonctionnalités
        • Cette page a été déplacée : continuez ici
        • getting-started
        • Frameworks, Bundlers, HTML
        • index
        • Modules supplémentaires
        • Réseau
        • Structure du projet Needle Engine
        • Projets d'exemples
        • Exemples de Scripting
        • Créer et utiliser des Components
        • showcase-bike
        • En direct
        • À propos
        • En direct
        • Jouer
        • En direct
        • En direct
        • Support et Communauté
        • Vue d'ensemble technique
        • Témoignages
        • Tester sur les appareils locaux
        • Utiliser Needle Engine directement depuis HTML
        • vision
        • VR & AR (WebXR)
        • blender
          • Needle Engine pour Blender
        • cloud
          • Needle Cloud
        • custom-integrations
          • index
        • getting-started
          • Introduction au Scripting pour les Développeurs Unity
          • Premiers pas et installation
          • Scripting in Needle Engine
        • reference
          • needle.config.json
          • <needle-engine> Configuration
          • @serializable et autres décorateurs
        • three
          • index
        • unity
          • Synchronisation de l'Editor (Editor Sync)
          • Needle Engine pour Unity
      • hi
        • SUMMARY
        • कंपोनेंट का स्वतः जनरेशन
        • नीडल कोर कंपोनेंट्स
        • How To Debug
        • Deployment and Optimization
        • embedding
        • Everywhere Actions
        • उदाहरण प्रोजेक्ट ✨
        • एसेट, एनिमेशन, प्रीफैब, मटेरियल, लाइटमैप्स... को एक्सपोर्ट करना
        • प्रश्न और उत्तर (FAQ) 💡
        • सुविधा अवलोकन
        • यह पृष्ठ स्थानांतरित कर दिया गया है: यहां जारी रखें
        • getting-started
        • Frameworks, Bundlers, HTML
        • index
        • अतिरिक्त मॉड्यूल
        • नेटवर्किंग
        • Needle Engine प्रोजेक्ट स्ट्रक्चर
        • samples-and-modules
        • स्क्रिप्टिंग उदाहरण
        • कंपोनेंट बनाना और उपयोग करना
        • लाइव
        • लाइव
        • परिचय
        • लाइव
        • लाइव
        • लाइव
        • लाइव
        • समर्थन और समुदाय
        • तकनीकी अवलोकन
        • प्रशंसापत्र
        • Testing on local devices
        • HTML से सीधे Needle Engine का उपयोग करना
        • vision
        • VR & AR (WebXR)
        • blender
          • Needle Engine for Blender
        • cloud
          • Needle Cloud
        • custom-integrations
          • index
        • getting-started
          • Unity डेवलपर्स के लिए स्क्रिप्टिंग परिचय
          • आरंभ करना और इंस्टॉलेशन
          • Needle Engine में स्क्रिप्टिंग
        • reference
          • needle.config.json
          • <needle-engine> कॉन्फ़िगरेशन
          • @serializable and other decorators
        • three
          • index
        • unity
          • Editor Sync
          • Unity के लिए Needle Engine
      • ja
        • SUMMARY
        • 自動コンポーネント生成
        • Needleコアコンポーネント
        • デバッグの方法
        • デプロイと最適化
        • embedding
        • Everywhere Actions
        • サンプルプロジェクト ✨
        • アセット、アニメーション、Prefab、マテリアル、ライトマップなどのエクスポート
        • よくある質問(FAQ)💡
        • 機能概要
        • このページは移動しました: こちらからどうぞ
        • getting-started
        • フレームワーク、バンドラー、HTML
        • index
        • 追加モジュール
        • ネットワーキング
        • Needle Engineプロジェクトの構造
        • サンプルプロジェクト
        • スクリプティング例
        • Creating and using Components
        • ライブ
        • showcase-castle
        • 概要
        • ライブ
        • ライブ
        • ライブ
        • ライブ
        • サポートとコミュニティ
        • 技術概要
        • お客様の声
        • ローカルデバイスでのテスト
        • HTMLからNeedle Engineを直接使用する
        • vision
        • VR & AR (WebXR)
        • blender
          • Blender 用 Needle Engine
        • cloud
          • Needle Cloud
        • custom-integrations
          • index
        • getting-started
          • Scripting Introduction for Unity Developers
          • はじめに & インストール
          • Needle Engineでのスクリプティング
        • reference
          • needle.config.json
          • <needle-engine> 設定
          • @serializable およびその他のデコレーター
        • three
          • index
        • unity
          • Editor Sync
          • Unity用Needle Engine
      • pt
        • SUMMARY
        • Automatic Component Generation
        • Componentes Principais do Needle
        • Como Depurar
        • Implementação e Otimização
        • embedding
        • Everywhere Actions
        • Projetos de Exemplo ✨
        • Exportar Recursos, Animações, Prefabs, Materiais, Lightmaps...
        • Perguntas e Respostas (FAQ) 💡
        • Visão Geral dos Recursos
        • Esta página foi movida: continue aqui
        • getting-started
        • Frameworks, Bundlers, HTML
        • index
        • Módulos Adicionais
        • Redes
        • Estrutura do Projeto Needle Engine
        • Projetos de Exemplo
        • Exemplos de Scripting
        • Criar e usar Componentes
        • Ao Vivo
        • Ao Vivo
        • Sobre
        • Ao Vivo
        • Ao Vivo
        • Ao Vivo
        • Ao Vivo
        • Suporte e Comunidade
        • Visão Geral Técnica
        • Depoimentos
        • Testar em dispositivos locais
        • vanilla-js
        • vision
        • VR & AR (WebXR)
        • blender
          • Needle Engine para Blender
        • cloud
          • Needle Cloud
        • custom-integrations
          • index
        • getting-started
          • Introdução à Scripting para Developers Unity
          • Começar e Instalação
          • Scripting no Needle Engine
        • reference
          • needle.config.json
          • needle-engine-attributes
          • @serializable e outros decorators
        • three
          • index
        • unity
          • Sincronização do Editor
          • Needle Engine para Unity
      • vn
        • 404
        • SUMMARY
        • Automatic Component Generation
        • Các Component Cốt lõi của Needle
        • Cách gỡ lỗi
        • Triển khai và Tối ưu hóa
        • embedding
        • Hành động ở mọi nơi (Everywhere Actions)
        • Các Dự Án Ví Dụ ✨
        • Xuất Tài sản, Hoạt ảnh, Prefab, Vật liệu, Lightmap...
        • Câu hỏi thường gặp (FAQ) 💡
        • Tổng quan tính năng
        • Trang này đã được di chuyển: tiếp tục tại đây
        • getting-started
        • Frameworks, Bundlers, HTML
        • index
        • Các Module Bổ Sung
        • Kết nối mạng
        • Cấu trúc dự án Needle Engine
        • samples-and-modules
        • Ví dụ về Scripting
        • Tạo và sử dụng Component
        • Trực tiếp
        • Trực tiếp
        • Giới thiệu
        • Trực tiếp
        • Chơi thử
        • Trực tiếp
        • Demo trực tiếp
        • Hỗ trợ và Cộng đồng
        • Tổng quan kỹ thuật
        • Lời chứng thực
        • Testing on local devices
        • Sử dụng Needle Engine trực tiếp từ HTML
        • vision
        • VR & AR (WebXR)
        • blender
          • Needle Engine cho Blender
        • cloud
          • Needle Cloud
        • custom-integrations
          • index
        • getting-started
          • Giới thiệu về Scripting cho các nhà phát triển Unity
          • Getting Started & Installation
          • Scripting trong Needle Engine
        • reference
          • needle.config.json
          • Cấu hình <needle-engine>
          • @serializable và các decorator khác
        • three
          • index
        • unity
          • Editor Sync
          • Needle Engine cho Unity
      • zh
        • SUMMARY
        • 自动生成组件
        • Needle 核心组件
        • 如何调试
        • 部署与优化
        • embedding
        • Everywhere Actions
        • 示例项目 ✨
        • 导出资源、动画、预制体、材质、光照贴图...
        • 常见问题 (FAQ) 💡
        • 功能概览
        • 此页面已移动:请在此处继续
        • getting-started
        • 框架、打包器、HTML
        • index
        • 附加模块
        • 网络
        • Needle Engine 项目结构
        • 示例项目
        • Scripting Examples
        • Creating and using Components
        • 实时示例
        • 实时
        • 关于
        • 实时演示
        • 在线试玩
        • 实时演示
        • 现场演示
        • 支持与社区
        • 技术概述
        • 用户评价
        • Testing on local devices
        • 使用 Needle Engine 直接从 HTML
        • vision
        • VR & AR (WebXR)
        • blender
          • Needle Engine for Blender
        • cloud
          • Needle Cloud
        • custom-integrations
          • index
        • getting-started
          • Scripting Introduction for Unity Developers
          • 入门与安装
          • 在 Needle Engine 中编写脚本
        • reference
          • needle.config.json
          • <needle-engine> 配置
          • @serializable and other decorators
        • three
          • index
        • unity
          • 编辑器同步
          • Unity 版 Needle Engine
Powered by GitBook
On this page
  • Tầm nhìn của chúng tôi 🔮
  • Tương lai của Web 3D
  • Tại sao lại có thêm một nền tảng khác cho 3D trên web? Chẳng phải đã có đủ lựa chọn rồi sao?
  • Tạo ra Quy trình làm việc (Workflow), không phải Trình chỉnh sửa (Editor)
  • Tiêu chuẩn mở thay vì Vùng chứa độc quyền
  • Các mục tiêu và những điều không phải mục tiêu
  • Các mục tiêu
  • Những điều không phải mục tiêu
  • Mối liên hệ với các engine và framework khác
  • Needle Engine và Unity WebGL
  • Needle Engine và three.js
Edit on GitHub
  1. documentation
  2. lang
  3. vn

vision

PreviousSử dụng Needle Engine trực tiếp từ HTMLNextVR & AR (WebXR)

Last updated 26 days ago

Tầm nhìn của chúng tôi 🔮

Tương lai của Web 3D

Chúng tôi tin rằng việc sử dụng 3D trên web sẽ mở rộng đáng kể trong những năm tới. Trong khi ngày nay các ứng dụng native là tiêu chuẩn, ngày càng có nhiều nội dung được cung cấp dưới dạng web app hoặc . Các thiết bị VR và AR mới sẽ , tạo ra một vấn đề thú vị: responsive đột nhiên không chỉ có nghĩa là "màn hình nhỏ" hay "màn hình lớn", bạn còn phải xử lý không gian, 3D, vị trí không gian và tiềm năng là kính và bộ điều khiển!

Thêm vào đó là sự thúc đẩy hướng tới tương tác và hợp tác nhiều hơn, và bạn sẽ có một hỗn hợp các thách thức thú vị.

Tại Needle, chúng tôi tin rằng việc lên ý tưởng và sáng tạo trong không gian này phải dễ dàng. Chúng tôi đã đặt ra mục tiêu đẩy nhanh tiến độ – tạo ra runtime riêng để đạt được những mục tiêu này. Đó là lý do tại sao chúng tôi tích hợp khả năng triển khai tới AR và VR ngay vào các core components của mình, và liên tục kiểm tra xem các ý tưởng mới có hoạt động trên các nền tảng hay không.

Tại sao lại có thêm một nền tảng khác cho 3D trên web? Chẳng phải đã có đủ lựa chọn rồi sao?

Có rất nhiều lựa chọn, đúng là như vậy! Chúng tôi nhận thấy rằng các hệ thống hiện tại1 có thể được phân loại sơ bộ thành hai nhóm: một số có khả năng xử lý asset, các tool và workflow thân thiện với artist rất tốt nhưng xuất ra một loại binary blob, và những loại khác tập trung vào code nhiều hơn, thân thiện với developer và cho phép tích hợp tuyệt vời vào các modern web workflows2.

Chúng tôi muốn kết nối hai thế giới này và kết hợp những gì tốt nhất của cả hai: workflow thân thiện với artist và modern web technologies. Kết hợp với các modern formats và workflow nhanh chóng, chúng tôi tin rằng điều này sẽ cho phép nhiều creator hơn đưa nội dung của họ lên web. Chúng tôi cũng nhìn thấy cơ hội để làm tốt ngay từ đầu với AR, VR và collaboration.

1: Ví dụ bao gồm Unity, PlayCanvas, three.js, react-three-fiber, Babylon, A-Frame, Godot, và nhiều hơn nữa.2: Có nhiều sắc thái hơn về điều này so với những gì có thể trình bày trong một đoạn giới thiệu! Tất cả các engine và framework đều có những điểm mạnh và điểm yếu riêng, và liên tục phát triển.

Tạo ra Quy trình làm việc (Workflow), không phải Trình chỉnh sửa (Editor)

Chúng tôi nghĩ rằng làn sóng ứng dụng 3D tiếp theo trên web sẽ đi kèm với workflows tốt hơn: mọi người đều có thể tạo một 3D scene, một phòng trưng bày nghệ thuật, giới thiệu sản phẩm hoặc 3D scan trên web hoặc làm simple games. Để đạt được mục tiêu này sẽ cần nhiều hơn là chỉ hỗ trợ một hệ thống cụ thể và xuất ra web từ đó.

Mục tiêu của chúng tôi là cho phép mọi người đưa data lên web từ các creative tools của họ: dù là Unity, Blender, Photoshop, hay thứ gì khác. Chúng tôi biết rằng đây là một mục tiêu lớn – nhưng thay vì làm mọi thứ cùng một lúc, chúng tôi muốn lặp lại và tiến gần hơn đến mục tiêu đó cùng nhau.

Tiêu chuẩn mở thay vì Vùng chứa độc quyền

Tại cốt lõi của Needle Engine là định dạng và khả năng mở rộng của nó với các custom extensions. Mục tiêu là: một tệp .glb duy nhất có thể chứa toàn bộ data của ứng dụng của bạn.

Điều đáng chú ý là không phải mục tiêu là vận chuyển code thực tế bên trong glTF; việc vận chuyển và chạy code là công việc của các modern web runtimes và bundling. Chúng tôi chắc chắn có thể hình dung rằng các abstract representations của logic (ví dụ: graphs, state machines, v.v.) có thể được chuẩn hóa đến một mức độ nhất định và cho phép interoperable worlds, nhưng chúng tôi chưa đạt đến đó.

Các mục tiêu và những điều không phải mục tiêu

Các mục tiêu

  • Iteration phải nhanh chóng và triển khai phải nhanh.

  • Làm việc trên các dự án web 3D phải dễ dàng như làm việc với các dự án web 2D.

  • Developers và artists có thể cộng tác trực tiếp.

  • Responsive web mở rộng ra ngoài màn hình – AR và VR nên được xây dựng tích hợp, không phải là suy nghĩ sau.

  • Chúng tôi muốn đóng góp trở lại cho các open-source projects.

  • Thảo luận cởi mở về 3D và web standards.

  • Khả năng đưa và lấy data của bạn ở các open formats.

  • Khả năng chọn web framework bạn sử dụng, không bị lock-in vào các framework và vendor cụ thể.

  • Các common usecases hoạt động mà không cần hoặc chỉ cần kinh nghiệm coding hạn chế.

Những điều không phải mục tiêu

  • Không phải mục tiêu là có 100% coverage của tất cả các sự kết hợp giữa Editor versions, feature sets, render pipelines.

  • Không phải mục tiêu là cung cấp một môi trường no-code hoàn chỉnh.

  • Không phải mục tiêu là sánh ngang feature set, capabilities, hoặc runtime performance của các engines khác.

Mối liên hệ với các engine và framework khác

Needle Engine và Unity WebGL

Qua nhiều năm làm việc với Unity, chúng tôi nhận thấy rằng trong khi engine và editor tiến bộ với tốc độ tuyệt vời, output WebGL hơi bị tụt lại phía sau. Việc tích hợp Unity players vào các web-based systems khá khó khăn, việc "nói chuyện" với website xung quanh đòi hỏi một số giải pháp thay thế, và quan trọng nhất, thời gian iteration rất chậm do cách Unity đóng gói tất cả code vào WebAssembly thông qua IL2CPP. Những công nghệ này rất tuyệt vời và mang lại runtime performance tuyệt vời cùng rất nhiều flexibility. Nhưng chúng chậm hơn và bị ngăn cách nhiều so với modern web development workflows đến nỗi chúng tôi quyết định tự mình giải quyết vấn đề.

Needle Engine và three.js

Needle Engine được xây dựng trên three.js. Tất cả rendering đều đi qua nó, các tệp glTF được tải qua các extension interfaces của three, và component system của chúng tôi xoay quanh Object3D và scene graph của three. Chúng tôi cam kết đóng góp một số thay đổi và cải tiến của mình lên upstream, tạo pull requests và báo cáo issues trong quá trình thực hiện.

Trang được tự động dịch bằng AI

PWA
mở rộng sang web
glTF
Đọc thêm về cách chúng tôi sử dụng glTF và các extension