Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

When the render engine is to open source? #9

Open
generatemotion opened this issue Jun 22, 2024 · 4 comments
Open

When the render engine is to open source? #9

generatemotion opened this issue Jun 22, 2024 · 4 comments

Comments

@generatemotion
Copy link

Hi

I find the renderer engine is downloaded from repo, when this part is to open source?

@chengzl18
Copy link
Member

Because the client incorporates assets and code that cannot be redistributed according to their EULAs, it is currently not released as raw assets and code but rather as executables. The executables are permanently free to use. We are considering reimplementing the restricted code or making the client open source in a modular way. The specific timeline has not yet been determined.

If you currently need certain features for the client, you can request a new feature. If you want to contribute to the client code, you can contact us. If you want to learn about the rendering part, it is extended from Unity URP, you can learn about it.

@generatemotion
Copy link
Author

thanks too much. The client start too slow, I find the server use gRPC , that means the client will poll, is that?

@generatemotion
Copy link
Author

could you share the client code to me, i want to study the implementation details

@chengzl18
Copy link
Member

chengzl18 commented Aug 16, 2024

The communication of gRPC is efficient, it should not be the reason.
I calculated the startup time with the following script:

from legent import Environment, ResetInfo, generate_scene
import time

start_time = time.time()
env = Environment(env_path="auto")
print(f"Launch Time: {time.time() - start_time:.2f}s")

scene = generate_scene()

start_time = time.time()
env.reset(ResetInfo(scene=scene))
print(f"Reset Time: {time.time() - start_time:.2f}s")

start_time = time.time()
for i in range(10):
    env.step()
print(f"Step Time: {(time.time() - start_time)/10:.2f}s/step")

env.close()

And the results are as follows:

Launch Time: 2.04s
Reset Time: 0.83s
Step Time: 0.02s/step

I would like to know how long it took to start on your machine? 2s is a normal startup time for a 3D environment, considering that the environment will be used for a long time after it starts, this should not be too much of an impact.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants