Git Product home page Git Product logo

papagiannakis / elements Goto Github PK

View Code? Open in Web Editor NEW
21.0 6.0 22.0 194.84 MB

Project Elements: A computational entity-component-system in a scene-graph pythonic framework, for a neural, geometric computer graphics curriculum

Home Page: https://papagiannakis.github.io/Elements/

License: Apache License 2.0

Python 11.16% Jupyter Notebook 88.79% GLSL 0.05%
computergraphics deep-learning entity-component-system pythonic-framework scenegraph 3d-graphics 3d-models design-patterns opengl real-time-rendering

elements's People

Contributors

aprotopsaltis avatar baeckerbraten avatar chibinemesis avatar greglit avatar kamarianakis avatar lydatakis avatar michalistamiolakis avatar nickiliak avatar oliver93mk avatar papagiannakis avatar paulzik avatar

Stargazers

 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

elements's Issues

Errors on scene shutdown

Some errors are generated on scene shutdown. It is probably related to VertexArray.
All examples, except 1,2 and 11, have this issue. Also, when running the code with the debugger the error is filtered.

Unable to import OpenGL.arrays.lists.ListHandler: sys.meta_path is None, Python is likely shutting down
Exception ignored in: <function VertexArray.del at 0x7fd074d10ca0>
Traceback (most recent call last):
File "/Users/antonisprotopsaltis/Documents/docs/work/ORAMAVR/src/Elements/Elements/pyGLV/GL/VertexArray.py", line 88, in del
File "src/latebind.pyx", line 39, in OpenGL_accelerate.latebind.LateBind.call
File "src/wrapper.pyx", line 299, in OpenGL_accelerate.wrapper.Wrapper.call
File "src/wrapper.pyx", line 161, in OpenGL_accelerate.wrapper.PyArgCalculator.c_call
File "src/wrapper.pyx", line 128, in OpenGL_accelerate.wrapper.PyArgCalculatorElement.c_call
File "src/wrapper.pyx", line 114, in OpenGL_accelerate.wrapper.PyArgCalculatorElement.c_call
File "src/wrapper.pyx", line 212, in OpenGL_accelerate.wrapper.CallFuncPyConverter.c_call
File "src/arraydatatype.pyx", line 172, in OpenGL_accelerate.arraydatatype.ArrayDatatype.asArray
File "src/arraydatatype.pyx", line 55, in OpenGL_accelerate.arraydatatype.HandlerRegistry.c_lookup
TypeError: ("No array-type handler for type <class 'list'> (value: [2]) registered", None)
Unable to import OpenGL.arrays.lists.ListHandler: sys.meta_path is None, Python is likely shutting down
Exception ignored in: <function VertexArray.del at 0x7fd074d10ca0>
Traceback (most recent call last):
File "/Users/antonisprotopsaltis/Documents/docs/work/ORAMAVR/src/Elements/Elements/pyGLV/GL/VertexArray.py", line 88, in del
File "src/latebind.pyx", line 39, in OpenGL_accelerate.latebind.LateBind.call
File "src/wrapper.pyx", line 299, in OpenGL_accelerate.wrapper.Wrapper.call
File "src/wrapper.pyx", line 161, in OpenGL_accelerate.wrapper.PyArgCalculator.c_call
File "src/wrapper.pyx", line 128, in OpenGL_accelerate.wrapper.PyArgCalculatorElement.c_call
File "src/wrapper.pyx", line 114, in OpenGL_accelerate.wrapper.PyArgCalculatorElement.c_call
File "src/wrapper.pyx", line 212, in OpenGL_accelerate.wrapper.CallFuncPyConverter.c_call
File "src/arraydatatype.pyx", line 172, in OpenGL_accelerate.arraydatatype.ArrayDatatype.asArray
File "src/arraydatatype.pyx", line 55, in OpenGL_accelerate.arraydatatype.HandlerRegistry.c_lookup
TypeError: ("No array-type handler for type <class 'list'> (value: [3]) registered", None)
Unable to import OpenGL.arrays.lists.ListHandler: sys.meta_path is None, Python is likely shutting down
Exception ignored in: <function VertexArray.del at 0x7fd074d10ca0>
Traceback (most recent call last):
File "/Users/antonisprotopsaltis/Documents/docs/work/ORAMAVR/src/Elements/Elements/pyGLV/GL/VertexArray.py", line 88, in del
File "src/latebind.pyx", line 39, in OpenGL_accelerate.latebind.LateBind.call
File "src/wrapper.pyx", line 299, in OpenGL_accelerate.wrapper.Wrapper.call
File "src/wrapper.pyx", line 161, in OpenGL_accelerate.wrapper.PyArgCalculator.c_call
File "src/wrapper.pyx", line 128, in OpenGL_accelerate.wrapper.PyArgCalculatorElement.c_call
File "src/wrapper.pyx", line 114, in OpenGL_accelerate.wrapper.PyArgCalculatorElement.c_call
File "src/wrapper.pyx", line 212, in OpenGL_accelerate.wrapper.CallFuncPyConverter.c_call
File "src/arraydatatype.pyx", line 172, in OpenGL_accelerate.arraydatatype.ArrayDatatype.asArray
File "src/arraydatatype.pyx", line 55, in OpenGL_accelerate.arraydatatype.HandlerRegistry.c_lookup
TypeError: ("No array-type handler for type <class 'list'> (value: [4]) registered", None)

Camera-Object TRS Issue when TRS is open in ECSS Graph

TRS of a selected in ECSS Graph object is altered when moving the camera.

How to replicate the bug with the object TRS:

  1. Open the TRS component of an object in the ECSS graph
  2. now use the mouse to move the camera

Result: if the specific object has a TRS other than identity, it loses it.
If there are more than one TRS open the camera movement works well.

Need for a better usd scene for example 12

A better Usd file would allow better understanding of how USD import should work. Maybe add an example where users can easily add basic shapes and textured objects, as well as being able to delete them and then save the USD file.

Better control for rotational gizmos

Currently, there is a difficulty in manipulating the rotation gizmos due to how their bounding boxes are created:
image (1)

An improvement on this approach would be to create slim bounding boxes that wrap the gizmos instead of filling it inside

Missing trimesh, torch module

When attempting to run the ECSSceneClassificationExample.ipynb m the following missing module error is produced, despite installing everything as instructed. It is possible these packages are missing from the setup and setup config files.

---------------------------------------------------------------------------
ModuleNotFoundError                       Traceback (most recent call last)
Cell In[2], line 5
      3 sys.path.append("../../../")
      4 import numpy as np
----> 5 import Elements.pyECSS.utilities as util
      6 from Elements.pyGLV.GL.GameObject import GameObject
      7 from Elements.pyECSS.Component import BasicTransform, RenderMesh

File ~/Elements/Elements/pyECSS/utilities.py:20
     18 # Python external modules
     19 import numpy as np
---> 20 from trimesh import Scene
     23 # vector, points related functions -----------------------------------------------
     24 def vec(*iterable):

ModuleNotFoundError: No module named 'trimesh'
---------------------------------------------------------------------------
ModuleNotFoundError                       Traceback (most recent call last)
Cell In[3], line 27
     25 from OpenGL.GL import GL_LINES
     26 from CreateScenes import CreateRoomScene,CreateORScene,CreatePaperScene
---> 27 import Converter
     28 import torch

File ~/Elements/Elements/pyGLV/examples/Converter.py:4
      1 import pickle
      3 import numpy as np
----> 4 import torch
      6 from atlas.model import MODEL_LIST
      7 from Elements.pyECSS.Component import RenderMesh, BasicTransform

ModuleNotFoundError: No module named 'torch'

Indeed, when running a conda list on the created environment, these are missing. Simply calling the following seems to solve the issue, but still thought raising it would be beneficial.

conda install -c conda-forge trimesh

&

conda install pytorch::pytorch torchvision torchaudio -c pytorch

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.