Windows(win10/win11)上搭建Genesis开发环境

1 前言

  最近Genesis又更新了一次,官方说已经支持在Windows上进行渲染了。之前因为不支持在Windows上渲染,会触发function glGetUniformLocation not found问题。于是我们在wsl2中搭建了Genesis的开发环境,并解决了一系列问题,有兴趣的同学可以参考windows wsl linux环境下搭建 Genesis 引擎开发环境。那么本篇我们来讲一讲如何在Windows上搭建Genesis的开发环境。

本文所有版本概览:

Annoconda:23.1.0
PyTorch:2.5.1+cu124
Python:3.9.21
NVIDIA driver:555.85
CUDA:12.4
Genesis:0.2.1

2 安装conda

  去conda官网选择windows版本下载安装,不停的点下一步就OK。下载地址

https://www.anaconda.com/download/success



安装成功后打开conda的配置文件,配置清华镜像源,否则下载速度很慢。路径为:C:\Users\你的用户名\.condarc,如果文件不存在就自己手动创建一个。

  粘贴地址并保存

channels:
  - defaults
show_channel_urls: true
default_channels:
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
custom_channels:
  conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  pytorch-lts: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  deepmodeling: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/

  然后在开始菜单中打开conda终端

  输入以下命令创建一个新的python环境, -n 参数表示环境名,我这里就取名叫genesis

conda create -n genesis python=3.9

3 安装/更新NVIDIA驱动

  到NVIDIA官网下载适合自己显卡的驱动,下载地址

https://www.nvidia.cn/drivers/lookup/

如果不知道自己的电脑是什么显卡,可以在任务管理器中查看。

4 安装CUDA

  到NVIDIA官网选择适合自己系统的CUDA安装包,下载地址

https://developer.nvidia.com/cuda-12-4-1-download-archive?target_os=Windows&target_arch=x86_64&target_version=11&target_type=exe_local

5 安装Pytorch

  我们之前已经讲过了如何在windows上安装Pytorch,感兴趣的同学可以移步windows环境下pytorch安装踩坑

  先去浏览器或者迅雷里下载安装包,迅雷比较快。

https://download.pytorch.org/whl/cu124/torch-2.5.1%2Bcu124-cp39-cp39-win_amd64.whl

  由于第一步创建了一个genesis环境,先激活这个环境

conda activate genesis

  我下载到了D盘,然后通过pip安装,注意:不要有中文路径

pip install D:\torch-2.5.1+cu124-cp39-cp39-win_amd64.whl

  完成安装后验证一下torch环境是否可用了,出现True就表示可用了。

conda activate genesis 
python
import torch
torch.cuda.is_available() 
exit() 

6 安装Genesis

  执行以下命令进行安装,第一步是激活环境,第二步是安装Genesis

conda activate genesis
pip install genesis-world

  现在来下载Genesis的源码,可以用git,也可以下载压缩文件,下载地址

https://github.com/Genesis-Embodied-AI/Genesis

  下载完毕后,拷贝genesis目录下的所有文件,覆盖了我们conda环境下的genesis。比如我下载完源码的路径如下,复制所有文件。

  覆盖conda环境下的genesis,默认路径如下,注意改为自己的路径

C:\Users\zhangiser\anaconda3\envs\genesis\Lib\site-packages\genesis

7 运行Hello Genesis

  用vscode打开我们下载的源码,Ctrl+Shift+P,选择我们之前创建的conda环境, 右键Hello Genesis运行。



8 问题

8.1 function glGetUniformLocation not found

  说明你不是最新的代码,最新的代码这个问题已经被修复了,仔细观察报错信息,发现调用的是conda环境下的site-package目录下的genesis,并不是源码里的genesis,参考我们步骤5使用源码替换conda环境下的genesis即可。

8.2 TypeError: SimpleNonJITRenderer.shadow_mapping_pass() got an unexpected keyword argument ‘env_idx’


  最近有不少同学都反馈了这个问题,这是近期Genesis的一次更新中的bug,解决这个问题只需要把之前旧版本的genesis源码替换了conda环境下的Lib\site-packages\genesis就可以了。这个旧版本现在不太好找,因为commit太多了,这里直接给出我使用的旧版本源码,需要的同学可自取。

链接: https://pan.baidu.com/s/1cK4OvDawTp-3Wg4OpmaR6w 提取码: kybx

8.3 cannot import name ‘_replay’ from partially initialized module ‘genesis.ext.fast_simplification’ (most likely due to a circular import)

解决方案,同8.2,这也是新版本的bug,用老版本的源码替换了conda里genesis就可以了。

重要的话说三遍,尽量用老版本的源码替换conda环境里的genesis,能解决99%的环境问题。
重要的话说三遍,尽量用老版本的源码替换conda环境里的genesis,能解决99%的环境问题。
重要的话说三遍,尽量用老版本的源码替换conda环境里的genesis,能解决99%的环境问题。

9 总结

  在Windows上运行Genesis,比在Windows上的linux系统里(即wsl)运行Genesis,配置简单的太多了。毕竟我们在wsl里运行的时候会遇到各种问题,参考我们之前的博文里解决了十几个问题才最终跑起来。希望这个框架尽快能出和UE类似的渲染引擎。之前看周衔博士直播的时候说他们并不打算使用UE来进行渲染,而是打算自己写一个渲染引擎。如果到时候这个渲染引擎再集成一下Cesium的插件,那就更完美了,重量级的UE就可以下岗了,轻量级的Genesis上线,yyds
  另外多说一句,作者建了一个群,有想加的同学可以公众号回复Genesis交流群,本文就讲到这里了,回见~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

AIGIS.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值