Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings
This repository was archived by the owner on Jan 28, 2025. It is now read-only.
/vue-babylonjsPublic archive

A ready-to-go 3d environment for Vue.js using Babylon.js

License

NotificationsYou must be signed in to change notification settings

Beg-in/vue-babylonjs

Repository files navigation

Animated 3D Vue Logo

Vue-BabylonJS

Create high quality 3D graphics in the web as easily as writing HTML and CSS.

Quickly make a 3D animation:

3D Animation

It's this easy:

<template>  <Scene>    <Camera></Camera>    <HemisphericLightdiffuse="#0000FF"></HemisphericLight>    <Entity:position="[0, 0, 5]">      <Animationproperty="rotation.x":duration="5":end="Math.PI * 2"></Animation>      <Animationproperty="rotation.y":duration="5":end="Math.PI * 2"></Animation>      <Animationproperty="rotation.z":duration="5":end="Math.PI * 2"></Animation>      <PointLightdiffuse="#FF0000"></PointLight>      <templatev-for="xin [0,4,-4]">        <templatev-for="yin [0,4,-4]">          <Boxv-for="z in [0, 4, -4]":position="[x, y, z]":key="`${x},${y},${z}`"></Box>        </template>      </template>    </Entity>  </Scene></template>

It's even easier if you usePug (Jade) for templating:

<template lang="pug">  Scene    Camera    HemisphericLight(diffuse="#0000FF")    Entity(:position="[0, 0, 5]")      Animation(property="rotation.x":duration="5":end="Math.PI * 2")      Animation(property="rotation.y":duration="5":end="Math.PI * 2")      Animation(property="rotation.z":duration="5":end="Math.PI * 2")      PointLight(diffuse="#FF0000")      template(v-for="x in [0, 4, -4]")        template(v-for="y in [0, 4, -4]")          Box(v-for="z in [0, 4, -4]":position="[x, y, z]":key="`${x},${y},${z}`")</template>

Getting Started, Installation, and API Documentation

See the documentation website

Updates

Subscribe to the mailing list issue to keep up with important updates

About

Vue-BabylonJS is a 3D graphics component plugin forVue.js powered byBabylonJS.Vue-BabylonJS draws inspiration from A-Frame, but can be more performant with the exclusion of DOM manipulation and has closer ties to JavaScript through property binding syntax in Vue. Compared to ReactVR which uses A-Frame, Vue-BabylonJS has the potential for higher performance, more organized and decoupled components, and a higher-quality rendering engine.

See the discussion on the HTML 5 Game Dev Forums

Rationale

We use BabylonJS because it is the most efficient, most feature-rich, and most modern WebGL graphics library available. The addition of Vue makes the engine reactive and development becomes easier to reason about and organize. Out-of-the-box mobile support and sensible defaults make getting started a breeze.

The underlying engine is easily accessible to give pros the tools to tweak every aspect of BabylonJS. The organizational structure of the library is a Component-Entity-System and the Entity component contains many powerful features such a matrix transformation to allow for interaction with the Scene graph like a group of HTML divs. Powerful tools are available such as an integrated reactive property system that enables modifying 3D objects within templates and a Shader component that makes adding WebGL shaders easy.

Contributing

SeeCONTRIBUTING.md

Packages

No packages published

Contributors7


[8]ページ先頭

©2009-2025 Movatter.jp