head 1.7; access; symbols pkgsrc-2026Q1:1.7.0.14 pkgsrc-2026Q1-base:1.7 pkgsrc-2025Q4:1.7.0.12 pkgsrc-2025Q4-base:1.7 pkgsrc-2025Q3:1.7.0.10 pkgsrc-2025Q3-base:1.7 pkgsrc-2025Q2:1.7.0.8 pkgsrc-2025Q2-base:1.7 pkgsrc-2025Q1:1.7.0.6 pkgsrc-2025Q1-base:1.7 pkgsrc-2024Q4:1.7.0.4 pkgsrc-2024Q4-base:1.7 pkgsrc-2024Q3:1.7.0.2 pkgsrc-2024Q3-base:1.7 pkgsrc-2024Q1:1.5.0.2 pkgsrc-2024Q1-base:1.5 pkgsrc-2023Q4:1.4.0.2 pkgsrc-2023Q4-base:1.4 pkgsrc-2023Q3:1.3.0.4 pkgsrc-2023Q3-base:1.3 pkgsrc-2023Q2:1.3.0.2 pkgsrc-2023Q2-base:1.3 pkgsrc-2023Q1:1.2.0.2 pkgsrc-2023Q1-base:1.2 pkgsrc-2022Q4:1.1.0.12 pkgsrc-2022Q4-base:1.1 pkgsrc-2022Q3:1.1.0.10 pkgsrc-2022Q3-base:1.1 pkgsrc-2022Q2:1.1.0.8 pkgsrc-2022Q2-base:1.1 pkgsrc-2022Q1:1.1.0.6 pkgsrc-2022Q1-base:1.1 pkgsrc-2021Q4:1.1.0.4 pkgsrc-2021Q4-base:1.1 pkgsrc-2021Q3:1.1.0.2 pkgsrc-2021Q3-base:1.1; locks; strict; comment @# @; 1.7 date 2024.09.06.15.43.26; author prlw1; state Exp; branches; next 1.6; commitid JvKY7gsP2QyQdLoF; 1.6 date 2024.05.03.20.34.37; author ryoon; state dead; branches; next 1.5; commitid mOSVuLZ1DGgpUA8F; 1.5 date 2024.02.11.14.48.14; author ryoon; state Exp; branches; next 1.4; commitid kiVSZZhhOx21D1YE; 1.4 date 2023.11.08.09.10.30; author nros; state Exp; branches; next 1.3; commitid ywXoVlGlX2gvOMLE; 1.3 date 2023.04.18.14.31.59; author ryoon; state Exp; branches; next 1.2; commitid BNUoGHhfkA1j9BlE; 1.2 date 2023.01.22.21.24.37; author ryoon; state Exp; branches; next 1.1; commitid sfmkfIdXG90gcAaE; 1.1 date 2021.07.26.05.15.15; author mrg; state Exp; branches; next ; commitid NCx1npCYdlUHks2D; desc @@ 1.7 log @Update blender to 4.2.1 (Not sure why I no longer need patch-source_blender_gpu_intern_gpu_matrix.cc) The next generation of the render engine EEVEE is here. Completely rewritten from scratch to allow global illumination, displacement, better SSS, viewport motion blur, and so much more. -> https://developer.blender.org/docs/release_notes/4.2/eevee_migration/ Many many changes, see https://developer.blender.org/docs/release_notes/4.2/ for details. @ text @$NetBSD$ core was moved to _core in numpy 2.0 This path is added with -I, so looking for a file instead isn't a work around. --- CMakeLists.txt.orig 2024-08-16 13:50:55.000000000 +0000 +++ CMakeLists.txt @@@@ -2438,7 +2438,7 @@@@ if(WITH_PYTHON) # Always use numpy bundled in precompiled libs. elseif((WITH_PYTHON_INSTALL AND WITH_PYTHON_INSTALL_NUMPY) OR WITH_PYTHON_NUMPY) if(("${PYTHON_NUMPY_PATH}" STREQUAL "") OR (${PYTHON_NUMPY_PATH} MATCHES NOTFOUND)) - find_python_package(numpy "core/include") + find_python_package(numpy "_core/include") endif() endif() @ 1.6 log @graphics/blender: Update to 4.1.1 Changelog: Blender 4.1.1 includes many bugfixes and improvements in the following catogories: Animation & Rigging Compositor Cycles EEVEE Geometry Nodes Import & Export Modeling Python API Rendering Sculpting Sequencer User Interface Add-ons @ text @d1 1 a1 1 $NetBSD: patch-CMakeLists.txt,v 1.5 2024/02/11 14:48:14 ryoon Exp $ d3 2 a4 2 CMake 3.28.2 breaks unity build. From: https://projects.blender.org/blender/blender/commit/cf4365e555a759d5b3225bce77858374cb07faad Enable c++ extensions for alloca on NetBSD d6 1 a6 1 --- CMakeLists.txt.orig 2023-11-02 00:42:24.000000000 +0000 d8 8 a15 3 @@@@ -250,7 +250,7 @@@@ mark_as_advanced(CPACK_OVERRIDE_PACKAGEN mark_as_advanced(BUILDINFO_OVERRIDE_DATE) mark_as_advanced(BUILDINFO_OVERRIDE_TIME) a16 32 -if(${CMAKE_VERSION} VERSION_GREATER_EQUAL "3.16") +if(${CMAKE_VERSION} VERSION_GREATER_EQUAL "3.16" AND NOT ${CMAKE_VERSION} VERSION_EQUAL "3.28.2") option(WITH_UNITY_BUILD "\ Enable unity build for modules that support it to improve compile times.\n\ WARNING: this option allows files to be built without all necessary headers!\n @@@@ -1221,6 +1221,7 @@@@ set(EXETYPE "") # C/C++ flags set(PLATFORM_CFLAGS) +set(PLATFORM_CXXFLAGS) # these are added to later on. set(C_WARNINGS) @@@@ -2022,7 +2023,8 @@@@ set(CMAKE_CXX_STANDARD 17) # If C++17 is not available, downgrading to an earlier standard is NOT OK. set(CMAKE_CXX_STANDARD_REQUIRED ON) # Do not enable compiler specific language extensions. -set(CMAKE_CXX_EXTENSIONS OFF) +# Sorry needed for alloca on NetBSD +set(CMAKE_CXX_EXTENSIONS ON) # Make MSVC properly report the value of the __cplusplus preprocessor macro # Available MSVC 15.7 (1914) and up, without this it reports 199711L regardless @@@@ -2093,7 +2095,7 @@@@ endif() # Include warnings first, so its possible to disable them with user defined flags # eg: -Wno-uninitialized set(CMAKE_C_FLAGS "${C_WARNINGS} ${CMAKE_C_FLAGS} ${PLATFORM_CFLAGS}") -set(CMAKE_CXX_FLAGS "${CXX_WARNINGS} ${CMAKE_CXX_FLAGS} ${PLATFORM_CFLAGS}") +set(CMAKE_CXX_FLAGS "${CXX_WARNINGS} ${CMAKE_CXX_FLAGS} ${PLATFORM_CFLAGS} ${PLATFORM_CXXFLAGS}") # defined above, platform specific but shared names mark_as_advanced( @ 1.5 log @graphics/blender: Fix build with CMake 3.28.2 @ text @d1 1 a1 1 $NetBSD: patch-CMakeLists.txt,v 1.4 2023/11/08 09:10:30 nros Exp $ @ 1.4 log @blender: turn on c++ extensions using cmake, instead of USE_LANGUAGES @ text @d1 1 a1 1 $NetBSD: patch-CMakeLists.txt,v 1.3 2023/04/18 14:31:59 ryoon Exp $ d3 1 d6 1 a6 1 --- CMakeLists.txt.orig 2023-07-05 21:00:26.000000000 +0000 d8 10 a17 1 @@@@ -1010,6 +1010,7 @@@@ set(EXETYPE "") d25 1 a25 1 @@@@ -1707,7 +1708,8 @@@@ set(CMAKE_CXX_STANDARD 17) d35 1 a35 1 @@@@ -1768,7 +1770,7 @@@@ endif() @ 1.3 log @blender: Update to 3.5.0 Changelog: Blender 3.5 is feature packed, touching almost every corner to make Blender better in every way: GPU accelerated viewport compositor Support for sculpting with Vector Displacement Maps (VDM) textures 26 built-in node groups assets for Hair grooming Faster rendering of scenes with many lights in Cycles Import and export USDZ @ text @d1 1 a1 1 $NetBSD: patch-CMakeLists.txt,v 1.2 2023/01/22 21:24:37 ryoon Exp $ d3 3 a5 1 --- CMakeLists.txt.orig 2023-02-22 09:20:39.000000000 +0000 d7 1 a7 1 @@@@ -993,6 +993,7 @@@@ set(EXETYPE "") d15 11 a25 1 @@@@ -1749,7 +1750,7 @@@@ endif() @ 1.2 log @blender: Update to 3.4.1 Changelog: Released December 7th, 2022 ------------------------------------------------------------------------------- WHAT'S NEW IN 5 MINUTES CYCLES PATH GUIDING Blender 3.4 integrates Intel's Open Path Guiding Library, adding support for path guiding in CPU to help reduce noise in scenes where finding a path to light is difficult for regular path tracing, for example when a room is lit by light coming through a small door crack. Guiding is supported for surfaces with diffuse BSDFs and volumes with isotropic and anisotropic scattering. Important light directions are learned over time, improving as more samples are taken. Find it in the Sampling panel in Render properties. Note that while Path Guiding helps to render scenes containing simple caustics (e.g., water surface), it is not designed to be a caustic solver, such as MNEE, meaning it might not help render scenes containing complex caustics. Same render time, with and without Path Guiding. AND MORE CYCLES Sampling * Added Sobol-Burley sampling pattern * Improved Progressive Multi-Jittered sampling Graphic Drivers * Intel Arc on Windows: upgrade to driver version 101.3430 or newer to fix user interface crashes * For AMD HIP on Linux, upgrade to ROCm 5.3 or newer to fix issues with textures on Vega and RDNA1 graphics cards * For Apple Metal, Intel GPU rendering is now supported starting with macOS 13 Attribute Node * Access Geometry Nodes instance attributes * New mode for accessing attributes of the current View Layer, Scene or World Baking * New option to bake specular effects from the active camera view, instead of above the surface. This may be useful when baking textures that will be viewed from a fixed position or with limited camera motion. AUTO MASKING The auto-masking settings in Sculpt mode are now accessible from the header in the 3D Viewport. New methods have been added for automatically masking by cavity, viewpoint, and area. SO DEEP Instead of manually creating a cavity mask, this auto-masking option provides a faster way of painting and sculpting with Cavity. Use the "Create Mask" button to convert the auto-mask into a regular mask attribute (to edit it further or just visualize it). MASK FROM CAVITY "Inverted", "Factor", "Blur" and a "Custom Curve" give extra control to fine tune the cavity mask. Mask from Cavity AUTO MASKING IN ACTION Combine different methods to easily sculpt and paint little details. * 1. View Normal Automatic mask based on the viewing angle. * 2. Area Normal Use the normal direction of the brush cursor from the start of the stroke. * 3. Cavity Sculpt or paint in parts of the mesh sticking in or out. AND MORE * Faster reprojecting attributes using the Voxel Remesher * Performance improvements when not using Face Sets and Masks * Weight and Vertex painting will use the whole modifier stack if it produces no topology changes * Face Sets are now opt-in, meaning that primitive objects do not have a Face Set attribute by default UV & CHILL UV EDITING SCULPT RELAX TOOL The new geometry-based relax brush method helps you improves the quality of the UV mapping by making the UVs more closely follow the 3D geometry. As this is a brush, the user can drive the relaxation process. Non-uniform grid. ON THE GRID Several improvements in the UV Editor grid include: * Non-uniform grids * Pixel spacing * Draw grid on top of the image Align Rotation Rotate UVs to follow the geometry orientation in the 3D Viewport, or aligned to a selected edge, or automatically guess the best orientation. Quickly set a random value to the scale, rotation or offset of selected UV islands. AND MORE * Live Unwrap support for Grab tool * Support for pinned vertices in UV sculpt tools * Fix boundary edges for Relax tool Laplacian method * Constrain to Bounds for UV sculpt tools * UV selection support in many operations * Prevent orphaned islands in UV sculpt tools * Support constrain to bounds in Rotation operator * Add option to use Blender 2.8 margin calculation * Many UV Packing operations now work with non-manifold geometry * Several fixes GEOMETRY NODES WHAT YOU SEE IS WHAT YOU GET Introducing: Viewport overlay for Geometry Nodes Viewer Node. Preview attributes without affecting the final result. The intensity of the overlay can be adjusted from the Overlay popover in the 3D Viewport header. SAMPLE UV SURFACE A new node to get attribute values based on UV coordinates. A simple concept that opens endless opportunities. Sample UV Surface node. Download this file. PLUS THESE NEW MESH NODES The new Face Set Boundaries node finds the edges between different patches of faces. Corners of Face retrieves corners that make up a face, and Corners of Vertex retrieves face corners connected to vertices. Edges of Corner retrieves the edges on boths sides of a face corner, while Edges of Vertex retrieves the edges connected to each vertex. Face of Corner Retrieves the face each face corner is part of. Offset Corner in Face Retrieves neighboring corners within a face. Retrieves the vertex each face corner is attached to. NEW CURVE NODES Curve of Point Retrieves the curve a control point is part of. Points of Curve Retrieves a point index within a curve. Offset Point in Curve Offset a control point index within its curve. The Set Curve Normal allows choosing the normal evaluation mode for curves. The Sample Curve node now has inputs for the curve index and a custom value to sample. AND NEW GENERAL NODES Retrieves the current modifier object for retrieving transforms. Retrieves data from specific geometry elements by index. Retrieves the indices from the closest geometry elements Interpolates a field input to the closest location on a mesh surface. Creates points inside of volume grids. EVEN MORE GEOMETRY NODES * Node Group assets are visible in the Add menu of the node editor * Trim Curves node now supports cyclic curves * Data-block users count visible in the Context Path and Group node header * New Preference to duplicate Node Groups * Better looking node links * Input sockets are reused when creating new node groups * Node Groups can now be duplicated with Alt+D * Trim Curves 3-4 times faster * Attributes of instances are now accessible from materials through the Attribute node * New, faster evaluation system GREASE PENCIL FULFILL The Fill tool has been greatly improved with new options, shortcuts, and introducing a new algorithm to close gaps. The new method uses the Radius of circumference to determine how close the strokes for filling. This new method is very effective when the extension done by the previous method (now renamed as Extend) of the strokes never cross. Use the mouse wheel or PageUp/Down to adjust length of the strokes, S key to toggle extend method, use D key to toggle extended stroke collision. Radius method to fill gaps. AND MORE * Import multiple SVG files at once * New Offset parameter in reproject operator for surface mode * Set Start Point operator for cyclic strokes * New "Chain" mode in Time Offset modifier * LineArt: Forced Intersection * Python: New Trace Frame parameter in Trace operator * New "Outline" modifier to generate perimeter stroke from camera view BUT WAIT, THERE'S MORE Animation & Rigging * Adjust Last Operation panel in NLA, Dopesheet and Timeline * NLA: Draw track background based on strip's extrapolation * NLA usability improvements * Mute Drivers Core * Override Resource Directories * Several improvements to fonts handling * Metaball objects are now evaluated as meshes * WebM videos frame extraction * Support FFmpeg AV1 codec encoding * Higher resolution thumbnails in Windows Explorer Performance * Improved performance in Subdivision Surface Modifier * Major speed up when batch creating objects * Performance: Optimize evaluation of disabled modifiers * Faster WebP thumbnail creation EEVEE & Viewport * Headless rendering support on Linux Pipeline, Assets & I/O * Support for PBR extensions in .mtl files * OBJ Importer: New global scale factor User Interface * Improved font thumbnails * Improved caret when editing Text objects * New shortcuts in Python Console editor * Detect existing file and add auto-increase for output filepaths * Improved editing of text containing non-precomposed diacritical marks * Select objects menu now sorted by distance * Outliner improvements Add-ons * Import Image as Plane: Improved UI * New add-on: Storypencil, for storyboarding Python API * Blender as a Python Module * Internal mesh format changes @ text @d1 1 a1 1 $NetBSD$ d3 1 a3 1 --- CMakeLists.txt.orig 2023-01-22 17:20:12.516051931 +0000 d5 1 a5 1 @@@@ -998,6 +998,7 @@@@ set(EXETYPE "") d13 1 a13 10 @@@@ -1721,7 +1722,7 @@@@ endif() if(UNIX AND NOT APPLE) if(NOT WITH_CXX11_ABI) - string(APPEND PLATFORM_CFLAGS " -D_GLIBCXX_USE_CXX11_ABI=0") + string(APPEND PLATFORM_CXXFLAGS " -D_GLIBCXX_USE_CXX11_ABI=0") endif() endif() @@@@ -1766,7 +1767,7 @@@@ endif() @ 1.1 log @update to blender 2.93. thanks to nia and joerg for help with updating. see https://www.blender.org/download/releases/ for a full list of changes. vague summary includes: 2.91: The fourth major release in 2020 is here to further improve the user experience, adding powerful new booleans, better cloth sculpting with support for collisions, volume objects modifiers, improved animation tools and so much more. Introducing collision support for the sculpt cloth brush and filter. The new Sculpt Trim tool lets you cut and even add geometry using box or lasso gestures. This brush includes a set of deformation modes designed to control the shape of the mesh boundaries. The new Simulation Target property allows the Pose and Boundary brushes to simulate cloth effects as you use them. Introducing the Exact solver to take care of complex geometry. Curve and text objects now have support for custom bevel profiles, just like the bevel modifier. All bevel types now support flat curve caps too! A new modifier for volume objects allows you to dynamically convert them into a mesh, ideal for stylized fluids. Convert any mesh into a volume and combine it with the new Volume Displace modifier. Convert images into Grease Pencil objects with just one click! The new Holdout option in materials allows you to paint holes in strokes and filled areas. Can't remember where that setting is? Search for it! Sloppy typing? Don't worry! Fuzzy search makes it so you can be less precise and still find what you look for. The new support for Compound Shape collisions allow for complex simulations not possible before. You now can combine multiple primitive shapes into a concave shape, resulting in blazing fast simulations. Everywhere! Tag your collections with colors. Drag & drop now works for modifiers, constraints and Grease Pencil effects. Animation curves can now become much snappier, allowing for more sudden changes with fewer keyframes required. 2.92: A completely new workflow for editing meshes, new physics simulation methods, faster Cycles rendering, better compositing with Eevee, and so much more. Blender 2.92 marks the beginning of something incredible. The new Geometry Nodes editor opens the door for creating and manipulating meshes using a node-based system. Create your own custom modifier! Expose properties from the nodes in the modifier stack for an easy-to-use interface. This first iteration focuses on object scattering and instancing, laying the groundwork for more advanced workflows in the upcoming releases. Smear multires displacement over the limit surface similar to how smearing for colors and topology slide works. Shape silhouettes as you please with this new option in the Grab tool. Mesh Fairing allows you to visually remove parts of your mesh by completely smoothing the area inside a Face Set. Grease Pencil strokes can now be edited as curves! The Trace Image feature now supports image sequences! Grease Pencil interpolation has been improved to better deal with different sized strokes. Volume rendering is significantly more memory efficient, by using a sparse NanoVDB grid. OptiX now supports hybrid rendering to combine the power of your CPU and GPU devices. See everything with the new Exposure node in the Compositor. 2.93: A total of 22 new nodes were added to the Geometry Nodes editor expanding the attribute system, sampling textures, support for volume data, improved usablity, mesh primitives, Cycles support for attributes, and much more. It is now possible to create mesh circles, cones, cubes, cylinders, grids, ico-spheres, uv-spheres, and lines without ever leaving the Geometry Nodes editor. Geometry Nodes allows you to create the most flexible modifiers. For this releases' splash, the author Erindale went all-in and made the entire thing pretty much using only Geometry Nodes. It has never been easier to create, tweak, and expand Masks or Face sets as you sculpt. Splitting complex figures into multiple objects is a quick way to significantly improve performance. In order to ease this workflow, there is a new way to quickly jump between objects while in Sculpt mode. The Line Art modifier generates stylized lines on your scene, collections, or individual objects. The Interpolate operator is now a full-fledged tool! The new Eevee looks so good you may want to re-render all your projects. The new Depth of Field handles close-ups and outlines much better. Volume shaders in Eevee now support Area Lights and Soft Shadows. @ text @d3 17 a19 12 Switch from -std=c++17 to -std=gnu++17 as alloca(3) is used. --- CMakeLists.txt.orig 2021-04-23 19:00:19.000000000 -0700 +++ CMakeLists.txt 2021-07-24 21:33:20.005271077 -0700 @@@@ -1718,7 +1718,7 @@@@ elseif( CMAKE_C_COMPILER_ID MATCHES "Clang" OR CMAKE_C_COMPILER_ID MATCHES "Intel" ) - string(APPEND CMAKE_CXX_FLAGS " -std=c++17") + string(APPEND CMAKE_CXX_FLAGS " -std=gnu++17") else() message(FATAL_ERROR "Unknown compiler ${CMAKE_C_COMPILER_ID}, can't enable C++17 build") d21 10 @