Git Product home page Git Product logo

litescene.js's People

Contributors

gbinary avatar h3r avatar itamayo avatar jagenjo avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

litescene.js's Issues

Can you help me to understand some properties on Camera? thanks.

Hi,

right now, I am confused about some private properties of the camera component.

all related with the projection matrix.

I want to change the default camera's projection matrix, but I found that there are not set function for it.

and also there are many private properties with name projection matrix such as:
_projection_matrix
_viewprojection_matrix
_view_matrix
_previous_viewprojection_matrix

can you help to understand them? many thanks for it.

and can you tell me that is there any method to change the camera's projection matrix?

I used LS.GlobalScene.getCamera()._projection_matrix =*; but failed, I did not see any changes.

I saw I can use camera.projectionMatrix.elements.set(*matrix); to change the camera's projection matrix in ThreeJS, so I want to know is there any similar method for it?

Thanks in advance!

DebugRenderer.prototype.render - is_selected_callback is not a callback

On line 14975 of LiteScene.js:

if(is_selected_callback)
   is_component_selected = is_selected_callback( component );

is_selected_callback is not a function, it is an object of type RenderSettings, passed automatically by the LEvent.trigger for afterRenderInstances

If these two lines are commented out, then the DebugRenderer renders okay

Create an NPM package

You should create an NPM package so that other people can reference this script using NPM.

DAE Loader does not work in the new version.

Hi,

After updated to the newest version, when I try to load DAE file via the method you told me, an error occurred.

litescene.js:5097 Uncaught TypeError: mesh.updateBounding is not a function

Simple scene does not load locally

Thank you for this wonderful code base, but I have the problem loading the "Simple scene" example. I run these codes locally, and to avoid browser problems with CORS I simply use

npm install -g http-server, cd /path/to/light.js, followed by http-server ./

This loads a nice intro page with the sponza scene image and provides three examples to explore:

Basic Examples
Simple scene: events are captured manually and only takes advantage of the render engine
Complex scene: using the LS.Player
Loaded scene: loading an existing scene created with WebGLStudio

The second and third work fine, a very nice reference to the C64 times. However, the first seems to be broken and with google-chrome F12 I can see the following error message:

Uncaught TypeError: Cannot read property 'registerShaderNode' of undefined
    at litescene.js:25660
    at litescene.js:58948

The line 255660 is this:
LGShaders.registerShaderNode( "light/phong", LGraphShaderPhong );

And it is the variable LGShaders that is undefined. It becomes undefined on the line 25571:
var LGShaders = LiteGraph.Shaders;

The LiteGraph object is nonempty and has a lot of properties, but no .Shaders property, which I cannot seem to locate.

I would appreciate any help/comments/hints to make this run.

multi-parenting ?

As far as I can see, the scene graph allows for exactly one parent for each node, as most do. Is that correct ?

I was looking at how litescene.js could work with X3D (VRML) for import/export or as a player. X3D (and SVG) have a concept of (DEF) nodes with can be reused as USE nodes elsewhere in the graph. They are placed not as copies or clones but just exist in multiple places, and therefore can have multiple parents.

Could such multi-parenting be simulated with components or prefabs ?

Instancing is similar but in X3D the DEF/USE concept applies to any node.

For importing and playing one could just make clones, I suppose. Do the clones keep a relationship with their originals ?

How to load DAE format object via LiteScene/SceneNode?

Hi,

In the monitor example, using

var node = new LS.SceneNode("monster");
node.loadAndSetMesh("monitor.obj");

can load the OBJ file correctly.

But if I change it to some others like the "*.dae" file, it won't work, nothing showing, so I want to know how to load DAE file (with animation) normally.

thanks a lot!

Missing/Desired Sponza example

This is more like a request/wish rather than a real issue, but I feel it is an important one so I will state it here.

This repository provides a few examples, but they are too small/short of getting going. On the other hand, you have this teaser with a shortcut to a fully lit Sponza scene which I can only see as a demo on some webglstudio.js servers. Would it be possible to include here the Sponza scene setup with volumetric lights the way you provide monitor.json and monitor_scene.json here?

I understand the Sponza scene is not small, but BabylonJS has this example and these days a hundred megabytes is very easy to download and indeed github has quite a few of Sponza-related demos, many just put the necessary files and provide a link for textures and .obj file to some place else like the Sponza github repo by Sascha Willems or McGuire Computer Graphics Archive.

What makes such tools as three.js and Babylon.js truly great is that they have a lot of examples and it is easier to learn directly by running them and walking through the codes rather than the documentation which is always missing something. And to get that traction one perhaps needs to set up a critical mass of these examples. I understand that litescene.js is to be used in conjunction with an editor-centered webglstudio.js development, but then there must be at least some kind of a minimal Blender/Unreal like tutorial system around it.

At the moment, if I want to set up some volumetric light or have that mirror and an animated character as you show in the Sponza scene, I simply do not know how to do this, nor where I could seek for such information. Examples would make life so much easier and could save one a lot of effort on reading/writing documentations.

ThreeJS with LightScene

Hello,

I have a SceneTree but i'd like to render it to a canvas using ThreeJS.

There appears to be a ThreeJS component, but from the example code, i am unsure how to make this work.

Regards,

Daniel

Go to frame and pause

Hi,

In the player, is it possible to go to a specific frame and pause, or a way to just cycle through the frames.

Something like seekToFrame() and seekToNextFrame().

I basically want to:

  1. Show first frame and pause
  2. Trigger next frame and pause
  3. Repeat until last frame.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.