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

blender: implement multi version, redux #305727

Open
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

the-furry-hubofeverything
Copy link
Contributor

@the-furry-hubofeverything the-furry-hubofeverything commented Apr 21, 2024

Description of changes

Continuation of #257780, resolves #256845.

I rewrote it, hopefully its easier to understand this time.

An update script is not included, that will probably be in a future PR.

Sidenote regarding blender 3.3:

I'm not porting blender 3.3 to current nixpkgs. All the libraries are too new to compile 3.3 with, and it only supports until September so I don't think it's worth the effort. if anyone still wants it, I had to -

  1. use "-DLIBDIR=/does-not-exist" to ignore the included lib files, or else it would complain about LLVM_VERSION being missing.
  2. Reimplement embree 3.x (3.13.5 is the last nixpkgs version), as Blender 4.x takes embree 4.x instead of embree 3.x
  3. Add an backport patch for ocio in intern/opencolorio/ocio_impl_glsl.cc to add dimensions to getTexture, since it is now mandatory in ocio 2.3.0.

Current hitch is that openusd doesn't have usd_mesh.Primvar any more. Unfortunately, with my current skills, it's not trivial to either have two versions of openusd or to patch out the problematic part.

attempted build log


/build/blender-3.3.18/source/blender/io/usd/intern/usd_writer_mesh.cc: In member function 'void blender::io::usd::USDGenericMeshWriter::write_uv_maps(const Mesh*, pxrInternal_v0_24__pxrReserved__::UsdGeomMesh)':  
/build/blender-3.3.18/source/blender/io/usd/intern/usd_writer_mesh.cc:121:54: error: 'class pxrInternal_v0_24__pxrReserved__::UsdGeomMesh' has no member named 'CreatePrimvar'  
121 | pxr::UsdGeomPrimvar uv_coords_primvar = usd_mesh.CreatePrimvar(  
| ^~~~~~~~~~~~~  
[ 50%] Building CXX object source/blender/blenlib/CMakeFiles/bf_blenlib.dir/intern/task_pool.cc.o  
[ 50%] Building C object source/blender/python/gpu/CMakeFiles/bf_python_gpu.dir/gpu_py_vertex_buffer.c.o  
make[2]: *** [source/blender/io/usd/CMakeFiles/bf_usd.dir/build.make:202: source/blender/io/usd/CMakeFiles/bf_usd.dir/intern/usd_writer_mesh.cc.o] Error 1  
make[2]: *** Waiting for unfinished jobs....  
lines 3725-3739/4378 86%

Things done

  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)
    • sandbox = relaxed
    • sandbox = true
  • Tested, as applicable:
  • Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
  • Tested basic functionality of all binary files (usually in ./result/bin/)
  • 24.05 Release Notes (or backporting 23.05 and 23.11 Release notes)
    • (Package updates) Added a release notes entry if the change is major or breaking
    • (Module updates) Added a release notes entry if the change is significant
    • (Module addition) Added a release notes entry if adding a new NixOS module
  • Fits CONTRIBUTING.md.

Add a 👍 reaction to pull requests you find important.

seperate commit to track the rename
resolves NixOS#256845

blender_3_6: init 3.6.11
blender_4_0: init 4.1.1

added hubble to maintainers
@the-furry-hubofeverything the-furry-hubofeverything changed the title Blender multi version blender: implement muliti version, redux Apr 21, 2024
@ofborg ofborg bot added the 8.has: package (new) This PR adds a new package label Apr 21, 2024
@ofborg ofborg bot requested review from veprbl and cillianderoiste April 21, 2024 12:54
@ofborg ofborg bot added 11.by: package-maintainer This PR was created by the maintainer of the package it changes 10.rebuild-darwin: 1-10 10.rebuild-linux: 1-10 labels Apr 21, 2024
@the-furry-hubofeverything the-furry-hubofeverything changed the title blender: implement muliti version, redux blender: implement multi version, redux May 7, 2024
@wegank wegank added the 2.status: merge conflict This PR has merge conflicts with the target branch label May 22, 2024
@ryan4yin
Copy link
Contributor

Any updates here?

@the-furry-hubofeverything
Copy link
Contributor Author

Any updates here?

Unfortunately it couldn't get much attention and I'm very burnt out. If anyone is willing, they have full permission to use my changes to start their own PR. I'll leave this open until such PR exists.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
2.status: merge conflict This PR has merge conflicts with the target branch 8.has: package (new) This PR adds a new package 10.rebuild-darwin: 1-10 10.rebuild-linux: 1-10 11.by: package-maintainer This PR was created by the maintainer of the package it changes
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Having Blender stable and LTS versions
3 participants