BlenderBIM - OpenBIM authoring with Blender

I am basicaly using BlenderBIM as an importer only at the moment, and not realy needing much of the IFC spesific things. I got a Blender Install with Blender BIM installed just to import IFC files, but then I continue the project in another Blender install with all my regular add-ons, and not BlenderBIM installed.

So basicaly all I realy need is what regular Blender will handle by default, like the objects/meshes and regular Blender materials. The issue I am having is that the materials (meaning the regular blender materials, not IFC materials) don´t seem to be vorking “correctly” accorfing to regular blender materials. They show up in the material list of objects but are not picked up by the “Material Utilities” add-on for instance. The materials I am getting from IFC files are not going to work out of the box as cycles or eevee materials (and I would not expect them to either), so all I realy wanting is to have them work like regular blender materials and stil named and “linked” as from the IFC so I can use other utilities and add-ons to swap them out with my own materials without having to clear out all material stots to then reasigning all the “refferances” again one by one. I hope that makes sense … ?

Maybe there is just some settings that are different or something that is causing them not to be hadled correctly by other material add-ons…

EDIT: BTW; As far as I have found out there is no way to import only the purly “visual” part of an IFC file like meshes and basic materials, import is esentialy opening the IFC file as a project, maybe an idea would be to add som options for a more regular import option to select what components to import, like meshes, materials and the project “sturucture”(like the outliner/collections hierarchy), and not the whole detailed IFC project, for us ArchViz people :wink:

What does the new Structural Tool in the left-hand toolbar do? I can’t find any mentions about it. Is this something for modeling, like, steel constructions, for instance?

@Elk I think there is a misunderstanding here. Loading a project only does load the visual part of an IFC. It doesn’t load anything else. Other data is streamed but not stored in Blender. Blender materials should be normal and picked up by other utilities. If you’re still having issues, perhaps we can have a screenshare online during the Sydney timezone and I can help clarify / demo what you’re after.

@michalpe it doesn’t do anything yet, but it will :slight_smile: Just a placeholder now.

1 Like

BlenderBIM Add-on v0.0.230701 has been released with 418 new features and fixes. It’s our built environment, help support the BlenderBIM Add-on: 100% free and open source software that lets you author and document BIM data fully to ISO standards. It’s built by the AEC community, for the AEC community. Get it today: https://blenderbim.org/

Unfortunately, many of the features planned for this release didn’t make it, and I personally had to take a step back from development for other life priorities. That said, I’m blown away by the progress made and this helps show that the project is maturing and does not rely on a single developer. This is possible thanks to the entire dedicated community and their amazing effort in coding, testing, reporting, and financial support.

OK. Deep breath. Get ready. Go!

Drawing improvements

A critical bug was fixed to allow drawings with different styles to be placed on the same sheet.

GPU migration is now finished, so MacOS users can now see drawing decorations again. Dimensions can have prefixes and suffixes.

Decorations are now on by default, smoother arc rendering, and minor colour polish. Fixed critical bugs related to level annotation calculation.

Huge optimisation for text annotations on larger projects with hundreds of text labels.

Custom scale support was apparently broken and has now been fixed.

There is a new revision cloud annotation. Note that these are not yet linked to revisions nor is there a revision management system yet.

Improved scheduling and arbitrary sheet references

Schedules now support print ranges, and more formatting such as bold, italic, font sizes, text colours, cell colours, and cell alignment.

You can now attach arbitrary referenced SVGs and include them on sheets. These are useful for legends, note blocks, stamps, and so on.

Raster underlay styles, External material styles, and glTF-compatible rendering shaders and textures

Drawing raster shading styles are now saved in IFC, so you can roundtrip fancy rendering styles. A number of bugs have been addressed related to underlays, so it should now be a lot more stable to use.

There is also now support for external shading styles. This means that IFC objects can have complex shader trees and textures in Blender, such as Cycles and Eevee materials. Switching to rendered mode will toggle external shading styles if they are compatible with Blender. You can also toggle whether to use IFC-only shading / rendering styles, or external styles.

Shader code has now been fixed to be language-independent, fixing a number of critical model loading bugs for non-English users.

There is also now a UI to generate IFC and glTF compatible shader graphs. This means that you can easily create different rendering styles for diffuse, glass, or glossy materials. Not just simple shaders, but also easily add diffuse, normal, metallic texture maps, and so on. All of these styling options cover the majority of simple PBR workflows for architectural visualisation and is fully supported in IFC (and glTF too, for that matter). Create beautiful models!

Incredible IFC Git development for collaborative native IFC authoring

A huge amount of work was done by Bruno Postle on IFC Git integration. IFC Git can now list, create and delete tags. You can also clone, fetch, and push repos, report merge conflicts, and auto-update information when selecting a revision. You can now view a visual diff and select new or changed objects. There is now support for multi-line commit and tag messages and to include commit summaries of merged branches.

The work on IFC Git represents a historic milestone in the ability to use native IFC collaboratively. Watch this incredible demo by Bruno Postle as 4 people around the world quickly start collaborating in a decentralised manner with purely free software on a BIM model - something no proprietary software is able to offer.

Parametric modeling upgrades

Parametric roofs now support asymmetrical gables, and ability to specify roof thicknesses.

Parametric railings, doors, windows, and so on now display with project length units for convenience. Same for length values in psets and qtos. This would make life much nicer for imperial users. A number of fixes made for parametric windows with multiple panels which had strange dimensions and non manifold geometry.

There is now IFC2X3 support for parametric doors, windows, and stairs.

IfcCSV upgrades

IfcCSV saves the filter query in addition to attributes. Exporting classes or reassigning classes also were polished with various bugs fixed.

IfcCSV also has had its function signatures made more developer-friendly. This includes new commonly requested documentation on how to use IfcCSV, as well as support for Pandas Dataframes.

Selection queries, used in filtering drawings and IfcCSV now support regex filters. This makes filtering for phases and other common psets significantly more convenient.

Experimental support for alternative IFC formats such as SQL and streaming

There is also now experimental support for IFC storage in SQLite and MySQL. There is an Ifc2Sql IfcPatch recipe to convert from IFC-SPF to SQL, with a number of toggles for different storage options such as entity reference list expansion, geometry blobs, full / partial or strict / lax schema, or dedicated property tables. This opens up IFC acccess to SQL-based developers or systems, as well as the ability to load significantly larger models with less memory at the expense of query speed and disk space. Instead of writing SQL queries, you may also use the ifcopenshell file and entity wrappers as an ORM. You can read the full details about this technology, its tradeoffs, and its significance on OSArch.

This has also helped identify a number of optimisation issues in the interface, which have been resolved, particularly around fetching properties and quantities.

(Note: the GIF shows an SQLite model where all data is fetched on the fly via SQL queries)

There is also now a highly experimental file stream option in ifcopenshell.open. This allows users to open (almost) arbitrarily huge IFC models (currently with geometry disabled) to do data processing on systems with limited memory. Currently, this is only read-only. You can also exclude classes from the stream for even more memory savings.

Even more bugfixes and UX polish

A number of bugs fixed related to 4D and 5D scheduling. The UI for cost schedules has continued to be polished. In particular, support for reviewing and assigning currencies. And the ability to choose an export location for cost schedules.

A small but significant change lets you edit parametric object profiles with the tab key, making it more seamless to users familiar with how you can toggle edit mode for mesh objects in Blender.

A significant optimisation was built for deleting very dense mesh objects. So objects that would previously freeze or crash Blender would now finish relatively quickly.

Some under the hood changes were made to further decouple Blender collections from the IFC spatial decomposition tree. This is a really fundamental change that removes a lot of legacy code, and should also lead to more stability on medium scale projects and larger and potentially fixed a lot of bugs people weren’t even aware of. A few other potential sync bugs with styles were also fixed.

IfcOpenShell has also continued a lot of development in the background, fixing build issues, geometry bugs, the ability to fetch representation items, and potentially significant optimisations in drawing generation. However, many of these are not yet available to users but will be in the next release.

A number of crashes were fixed specifically for MacOS M1 devices. IfcClash is now bundled for MacOS M1, but it may still have some usability issues for now. A critical segfault preventing IfcClash usage on Linux has been fixed.

Work has also been done to fix issues for the upcoming Blender 3.6 release. Go ahead and upgrade!

Google Summer of Code 2023 Brickschema development project!

We’d also like to welcome Riley Wong! Riley has begun work on his Google Summer of Code 2023 project to upgrade, improve, and build an awesome interface for Brickschema. Brickschema is an open data schema that focuses on describing the topology of building services and systems, typically used in smart building operations. There is an existing very basic implementation which allows simple loading, viewing, and association of Brick TTLs with IFC. Riley’s project will focus on updating Brickschema to the latest version, building undo / redo support, save project support, and a number of UI improvements to make it a practical tool for those building Brick models.

So far, Riley has upgraded Brickschema and is pending a merge for undo / redo and save project support. More will be reported in the next release!

So much more

There is now a file association on Linux, so you can auto-launch Blender when you have .ifc files in your file manager.

IfcTester is now shipped on PyPI.

For those using IfcOpenShell and the BlenderBIM Add-on in academia, there is now a citation file for all offered utilities.

Some critical bugs fixed related to material layers with no thickness that led to unloadable models. Improved type duplication and selection. Length values are now calculated and formatted the same way in the viewport and in rendered drawings.

Openings can be reassigned, and parametric layers can reassign to another layered class or type.

There is a new spatial and structural tool in your workspace, as a sign of how to start accommodating more usecases than the BIM tool can support. The structural tool is currently empty, but the spatial tool now includes relevant functions for creating spaces, regenerating spaces, and managing space boundaries. Space generation also now considers columns. The idea is to support various workflows in different tools, each which have optimised contextual options and hotkeys per workflow.

IFCs can now be linked to the Blend file via a relative path. This helps improve project portability.

There is a new building storey manager specifically to improve the UX around managing building storeys and level elevations.

IFC and CityJSON conversion has been upgraded to now support v1.1 CityObject types.

All changes

All changes can view the directly via the Git logs here:

Credits for this release (in order of commits via git shortlog -sn --since "2023-05-06"):

   139  Andrej730
    68  Dion Moult
    46  Thomas Krijnen
    39  Sigma Dimensions
    30  Bruno Postle
    18  D4ve-R
    13  Totally a booplicate
    11  Gorgious
     9  Massimo Fabbro
     8  BalĂĄzs Dukai
     8  Gorgious56
     8  Martin15135215
     5  Ahmad Saleem Z
     3  Kristoffer Andersen
     3  Ryan Schultz
     2  Trashman247
     2  Vasile-Corjan
     1  Bruno PerdigĂŁo
     1  Burak Yildiz
     1  Chetan
     1  Nelson Henrique
     1  arun
     1  johanrd

Donors since the last release:

Cyril Waechter BIM Insight
PlaniBIM SA
Daniel
Dion Moult
Matthew Fuller
Losepacific
Aether Engineering s.a.s. (Aether Engineering)
Sven Amiet
Johnson Bankole
Leon ten Brinke
StefStap
bitenergie
carlopav
Dumitru Minciu
Frode Lund Tharaldsen
Julio
Andrew Bailey
Ari Pikkarainen
Arun
Bedrossian Ádåm
Fabian Emanuel Kitzberger
Guest
Jonny Knopp
Marin Ljuban
Sebastian Duque
bclmnt
casiovadal
Alexander Kleemann
Benny
Carlos Dias
Cordero Architecture
Dirk Olbrich
Incognito
Kristoffer Hunnestad Andersen
Madars Siksna
Marcin Boguslawski
Miguel
Rafel Bayarre
Royner
Sebastian Monroe
Stephen Cremin
Tim McGinley
Udo
bimage
cvillagrasa
louistrue
Edgar Huebert
TROYYY
7 Likes

Ahh, I see. That makes things a bit clearer. I have changed my material workflow a bit, so not had any issues on my latest projects. If I find some time I might see if I can reproduce on some other IFC files and see if I can figure out exactly what makes the materials not work with certain add-ons… or if I just had “bad luck” with some of the IFC files I recived. Thanks.

BlenderBIM Add-on v0.0.230902 has been released with 695 new features and fixes. It’s our built environment, help support the BlenderBIM Add-on: 100% free and open source software that lets you author and document BIM data fully to ISO standards. It’s built by the AEC community, for the AEC community. Get it today: https://blenderbim.org/

In contrast to the previous slightly smaller release, this is another mammoth release with upgrades across many aspects of the ecosystem. A huge thank you to all developers, testers, users, and financial contributors: you are making this happen! You are changing the industry!

OK. Deep breath. Get ready. Go!

Note: test steel drawing done by Maarten Vroegindeweij.

Note: screenshots by Opening Design architectural studio, projects including Highland Haven and Livingston restaurant licensed under CC-BY-SA 4.0.

Revamped and more user-friendly interface

The user interface has undergone a significant change to make things easier and more intuitive for new users. A new BIM workspace layout is provided by default which provides a three column layout (outliner, 3D view, and properties) that is optimal for viewing the large hierarchies of BIM models and long properties, and hides lesser used features like the timeline.

The remnants of the old “import / export” nomenclature have been removed and we have a new File > Open, New, Save, and Save As menu to clearly indicate that we work with IFC natively, no longer the .blend format. This also means that common hotkeys have been reimplemented, including Ctrl-N for new file and Ctrl-S for save. They now intelligently give you options for new IFC projects with project presets for metric and imperial units, as well as save either a vanilla Blender model, an IFC project, or both depending on what you’ve got saved previously. Finally, the default cube / light / camera is automatically removed when starting new projects.

There is now a new set of properties tabs within the scene panel, clearly dividing functionality into IFC overview, Object Properties, Geometry and materials, drawings and documents, Systems and services, Structural analysis, Costing and scheduling, Facility management, Quality and coordination, and finally, vanilla Blender tools. Panels which were previously spread / hidden around multiple Blender locations (e.g. object tab, mesh tab, N sidebar, etc) are now consolidated, renamed, and grouped into logical sections that are recognisable to AEC professionals. Users will now find it easier to discover BIM functionality and clearly differentiate between vanilla Blender vs BIM functions. You can also now use Ctrl-Tab to toggle between tabs. The work is not yet complete, with work to do to redesign the material and drawing camera UI, but the fundamentals are there.

New friendly icons have also been added to aid new users to quickly discover authoring tools and for existing users to quickly switch to common tools like a Wall Tool, Slab Tool, Door Tool, etc.

The old annotation panel has been removed in favour of the new workspace annotation tool. The annotation tool now has its own annotation type manager and functions similar to the BIM tool, with a number of bugs like type reassignment fixed. In addition, there are new annotation types for symbols and multipoint symbols (useful for set out points, control points, and more).

To help in bugreporting and for daily build users, the commit and version is shown in the status bar.

Drawing and modeling improvements

There are three big changes in drawings. First, coplanar edges for meshes and tessellations are now dissolved by default. This makes using meshes as a geometry type much more practical in drawing generation.

Secondly, projection linework can now be indepently styled from cut linework and cut / projection fills. This allows you to style a lot of 2D linework where it was’t previously possible.

Thirdly, there is now support for reflected ceiling plans! There is still a lot of testing to be done, but this is one of the major things holding back usage in basic drawing sets.

The HLR prefiltering option teased about in the last release is now enabled. This may not be such a huge blanket speed upgrade, but depending on your drawing it may result in faster drawing generation. There has also been some optimisation applied when you have a lot of 2D elements on the screen and enable shapely surfaces.

There is also now basic support for perspective cameras. In general, the computation of shading and cut polygons is now more robust. Activating drawings no longer affect non-IFC objects if you are using vanilla Blender objects to enhance your models.

Dimensions can now have background fills for readability. Numerical decimal places can now be set to 0. RL and X Y Z dimensions in the BIM Tools are now length unit aware.

Generating spaces / rooms is now significantly more robust due a new computation method and can now support things like virtual space boundary elements.

When generating 2D body or annotation representations, you can now choose to generate the geometry from a detected outline or bounding box. This makes creating 2D plan view diagrams much easier and faster drawing generation.

A subtle but very important change is that meshes now preserve their quads and ngons. Previously, meshes were triangulated upon reloading but this is no longer the case. The shading style is now also stored as part of the drawing style.

As a huge quality of life upgrade, annotations are now created at the 3D cursor. Plan, section level, and radius annotations now support prefixes and suffixes and can be rotated. Fixed bug where section arrows would point the wrong way. Text annotations can now be duplicated, and now appear on the top drawing layer by default.

Sheets are now sorted alphabetically and there is a new hierarchical drawings panel which groups drawings into plans, sections, elevations, etc sorted alphabetically. This makes it easy to quickly jump to relevant drawings in new projects. Filtering now can filter both drawing numbers / titles and preserves the hierarchy.

MEP Services and distribution systems modeling

In this release we started laying the groundwork to make it possible to work natively with MEP elements (ducts, pipes, cables, etc).

We’ve added a couple of templates to create MEP segments or fittings from the type manager. They work very similarly to other profile based elements like beams. MEP elements created from templates will have ports by default and ports are automatically adjusted as you change segments lengths or move them.

Mainly, there are 4 tools currently available for MEP. The Add Fitting (also available from BIM / Duct / Pipe tool from hotkey) adds fitting based on current elements selection. Currently available fittings are obstructions and transitions.

Obstruction will be added if you have just 1 element selected, it be attached to the side closest to the 3D cursor. Transition will be added if you have 2 elements selected and they are parallel to each other. Bends will come next shortly right after this release, stay tuned for the updates.

When you it will try to find and use compatible fitting type - if it couldn’t it then will create new but the next time it will reuse already created type. It will make sure we’ll have types more clean and organized.

You can also Regenerate Distribution Elements (currently available from F3 menu and quick favorites). This adjusts connected elements for the active object. If you have moved a segment, fitting, or other connected equipment, it will auto adjust the chain of distribution segments with a “minimum impact” strategy (e.g. segments will extend insted of moving).

You can also manually Add Obstruction and Add Transition (currently available from F3 menu and quick favorites) - allows you to create obstructions and transitions with custom parameters when Add Fitting use just default values.

The UI has also been improved so it will be easier to nagivate between connected elements and their ports. More UI is coming - we plan to add viewport decorators that will allow you to see the connections between the elements, flow directions and other important information right in viewport without looking for it in menus.

More detailed and informative IfcTester reports

IfcTester has been upgraded to the latest IDS schema and had a few tweaks to fix failing edge cases. Facet filtering is now more optimised for faster auditing of larger models. A critical bug where inherited properties weren’t validated correctly was fixed.

IfcTester also now comes with a significantly upgraded report. This includes a summary progress bar at the very top, and progress bars for every specification. Progress is now reported in a much more granular fashion, including passing specifications, passing requirements, passing elements, and individual pass / fail checks. Reports also now include applicability, descriptions and instructions, as well as a formatted table to describe failed elements, with GlobalId and Tags highlighted to make it easy to select.

IfcTester can now export reports to BCF, including viewports of problematic elements. The PyPI distribution now includes the XSD.

Detailed documentation for programmers parsing IFC geometry

Extensive documentation has been written for how to use geometry trees. Geometry trees are optimised ways of spatially querying IFC geometry (e.g. what objects are at this coordinate, or intersect with this ray).

There is also documentation teaching how to create basic geometry, explaining concepts in detail from placement matrixes, contexts, extrusions, parametric layers, parametric profiles, mesh geometry, and more. This comes with simple API functions to do things like “wall from 2 points”.

There are also new utility functions to quickly generate rotation matrixes in numpy.

Standard US steel profile library

Thousands of standardised steel profiles are now available in a US profile library. This is in addition to existing EU and AU steel libraries.

New search panels and spreadsheet reporting

Inspired by IDS, there is a new, simpler, and more powerful selector syntax which can be used to construct filters, searches, and smart tags. The search panel has been completely redesigned to use this new system and supports filtering by class, attribute, property, material, classification, location, type, global ID, or other custom query. This is available with a graphical query builder where you can group queries and save / load searches.

These saved searches can also have a colourscheme applied to them. An auto generated colour legend may be then customised and multiple properties colour coded simultaneously. These colour schemes can also be saved.

You can also quickly select similar items by shared properties or attributes using a new “Select Similar” panel.

The same search filtering system can be now used with IfcCSV and is also used in all filtering, include, and exclude systems such as in drawing filters or IfcPatch extract element filters.

The element query syntax also now supports counting, fetching style data, and specific spatial structure elements (e.g. going straight to the storey and bypassing intermediate spaces).

This makes IfcCSV much more flexible. In addition, IfcCSV now supports custom table headers, multi-column sorting, grouping by value, group operations (such as count, sum, average, concatenate, etc), custom values for null and boolean fields, and a summary row for total counts / averages / etc. You can also specify custom formatting functions (e.g. force uppercase, lowercase, imperial formatting, etc). Columns can now be easily reordered. IfcCSV can also now export to three formats: CSV, XLSX, and ODS in the BlenderBIM Add-on interface. There is also now Pandas support when used programmatically.

Detailed documentation about the new selector syntax is also now available.

Fundamental features built for using Brickschema

Thanks to work by Riley Wong, our latest Google Summer of Code student, the Brickschema module has seen a large upgrade! Brickschema is a semantic structure and ontology designed to represent the relationships between building services.

The Brick module now lets you save / save as changes to a selected file. There is now a panel to manage namespaces. Improved utilities to add Brick entities, update their properties, and edit relationships. There is now a Brick undo/redo system.

Created a Brick IfcClassification system. For basic IFC types, the mapping to Brick types can be inferred automatically, but others may need to be classified before mapping correctly.

Most uniquely, updated the ability to assign IfcReferences and convert IFC to Brick. IFC files will be saved with references to Brick URIs and Brick files will be saved with references to IFC identifications.

Critical bugfixes

A critical undo sync bug was addressed when operators were invoked. The ID tracking system was also redesigned, which should fix a number of highly subtle undo bugs. An oversight meant that a number of operators were simply excluded from the undo system, which is now resolved. Finally, the undo system now understands “undo until point in history” which makes that function now possible, and additionally fixes a number of undo bugs that occurred when toggling edit mode. These types of bugs lead to corrupted model sessions that are incredibly frustrating for users. Also fixed a bug where Blender objects couldn’t be deleted with the “X” key.

Construction sequencing and planning ugprades

There is a new status panel to manage, show, hide, etc simple statuses, such as new, existing, demolished, and more. To overcome shortcomings in IFC, there is now an EPset_Status provided too and you can copy enumerated properties.

You can now save and load 4D animation colourschemes. Cost schedule UI cleaned up and its now easier to edit sequence relationships. You can now contrain construction resource work or number of resources used.

It’s now easier to edit productivity data. Yo ucan show derived schedule work for a parent resource, and the resource tree structure now looks nicer.

So much more

It’s hard to capture absolutely everything which has changed, but here are a few more stragglers.

  • More natural wall insertion when adding walls.
  • BCF projects may be closed / unloaded.
  • IfcClash can now store graphical clash snapshots again.
  • Fix critical crash in IfcDiff if comparing non-geometric models.
  • The type manager now shows updated profiles after editing them.
  • Fix cross-platform external styles.
  • IfcOpenShell installation into AWS Lambda and Google Colab is now documented.
  • IfcSverchok has been repackaged to work with the latest Sverchok.
  • Inverted normals on generated frameless panel balustrades are fixed. You can now press tab to edit more things like roofs and railing paths, and F2 to rename grid axes. Roof and railing type names are no longer hardcoded.
  • IFC4X3 now uses the most “official” IFC4X3 version (IFC4X3 Add1) transparently instead of an outdated version.
  • Improved shape testing / debugging which now considers 2D geometry to prevent false positives.
  • Fix critical bug where the MergeProject IfcPatch recipe created duplicate contexts.
  • OffsetObjectPlacements can now toggle whether rotation is applied before or after translation.
  • Deleting single objects in an array or removing an array now gives the users options on how to handle the loss of parametric data. Array children can also be locked or follow their parent.
  • Point representations and non-grouped annotations are now loaded, so you can load survey points (COGO points) from civil software such as 12D and Civil3D. There are also now symbols for survey points, traverse points, control points, and spot elevations.
  • Types can be renamed from the type manager.
  • You can now use queries to load in library assets.
  • Individual projects can now have their own pset templates distributed with them.
  • UV texture support is added for tesselated face set geometry.
  • Some work has been done to implement scale dependent map conversions in IFC4X3.
  • The ExtractElements recipe is now more robust when appending invalid type occurrences.
  • Linked IFCs can now have their selectability toggled.
  • There are now IFC operators for changing object origins.
  • You can now see how many times a profile is used and purged unused profiles in the profile manager.
  • Quantities can now be set on type elements.
  • Converting objects to tessellations now auto purges parametric materials for convenience.
  • IfcClash now works again on Windows.

All changes

All changes can view the directly via the Git logs here:

Credits for this release (in order of commits via git shortlog -sn --since "2023-07-01"):

   256  Dion Moult
   155  Andrej730
    60  Sigma Dimensions (Yass)
    58  rileywong311
    34  Gorgious56
    24  Thomas Krijnen
    18  Dirk Olbrich
    16  Carlos Dias
    13  Trashman247
    12  Bruno PerdigĂŁo
    10  dushyant basson
     7  ay-ex
     6  Bruno Postle
     5  Kristoffer Andersen
     5  Massimo Fabbro
     5  Ryan Schultz
     3  Chetan
     2  Christoph Mellueh
     1  Jesusbill
     1  OrionSehn
     1  Wei Yang
     1  arun
     1  luzpaz
     1  smr02

Donors since the last release:

Cyril Waechter BIM Insight
BIMvoice
PlaniBIM SA
Dion Moult
Daniel
Brendon Reid
Alex
Sven Amiet
Salman
Randolph
Matthew Fuller
carlopav
Jonny Knopp
Julio
Frode Lund Tharaldsen
StefStap
Losepacific
Haritonov Alexander
Dumitru Minciu
Bedrossian Ádåm
Aether Engineering s.a.s. (Aether Engineering)
bimage
daniele rossi
bitenergie
Yoshiaki Kusumi
Omar Zerhouni
Marin Ljuban
Leon ten Brinke
Johnson Bankole
Henning Munzel
Arun
Andrea Rosada
louistrue
cvillagrasa
Udo
Stephen Cremin
Miguel
Madars Siksna
Incognito
Carlos Dias
Benny
Alexander Kleemann
Guest
casiovadal
bclmnt
Tim McGinley
Royner
Rafel Bayarre
Marcin Boguslawski
Kristoffer Hunnestad Andersen
Fabian Emanuel Kitzberger
Esteban Valdebenito
Dirk Olbrich
Cordero Architecture
Ari Pikkarainen
Andrew Bailey
Christoph MellĂźh
Chidi
Bruno PerdigĂŁo
16 Likes

Absolutely great !
I am speechless.

This is just magic, groundbreaking, can’t believe what I’m seeing.

Hi very interesting project, i have several questions:

  1. Add local region of common steel shapes by ascii files or xml e.g JIS database
  2. Export geometry (point and line), section and material definition for structural analysis program e.g OpenSees
  3. Connection joint definition for beam to column, beam to beam, brace/truss in IFC formats.
  4. Reinforced steel of longitudinal bars and stirrups for concrete beam and column.

Are these already or possible to implemented in future of Blender BIM?

Anybody know what is lendlease anz addon and lendlease electrical?

Also looking some tutorial how BlenderBIM can operate with Gantt chart.

@xsynt 1. not yet possible 2. possible using ifc2ca but poor user experience right now 3. possible to define analytical structural connections but not yet any steel detailing 4. no features built for reinforcement yet.

@ManBlender The Lendlease tabs are not related to this add-on.

If anybody is interested in seeing an example of the 4D / 5D features including gantt charts and project resource management, check out this video:

5 Likes

BlenderBIM Add-on v0.0.231104 has been released with 405 new features and fixes. It’s our built environment, help support the BlenderBIM Add-on: 100% free and open source software that lets you author and document BIM data fully to ISO standards. It’s built by the AEC community, for the AEC community. Get it today: https://blenderbim.org/

Unfortunately in this release the total number of bugs have been climbing and not everything we wished to achieve got done. Despite this, we hope you enjoy the hard work done by the entire community! A huge thank you to all developers, testers, users, and financial contributors: you are making this happen! You are changing the industry!

OK. Deep breath. Get ready. Go!

Credits to Carlos Villagrasa for the release image :slight_smile:

Blender 4.0 support

Although not yet released, in the next week or so Blender 4.0 will be released. A number of compatibility issues have been addressed. Note that there is still an issue upstream in Blender where copying node trees from one shader to another is no longer working. This has been reported to Blender but until it’s resolved the feature for external material style shaders will not work. If this is important, you can just use Blender 3.6.

Other than that, feel free to upgrade to Blender 4.0!

Progress on MEP modeling

Added support for creating MEP bends for circular and rectangular profiles either using “Add Fitting” in one of BIM Tools or using “Add Bend” explicitly. It’s still getting polished but it already should work in the most cases, including support for different bend directions and radius.

MEP tools are now getting more accessible - they are available in the BIM Tool menu. We’ve also added a new one that connects elements by their closest available ports - for some cases now there is no need to show ports and connect them explicitly.

There is also now basic support for MEP elements decorations. It shows line decorations for currently selected elements or currently active system. You can also see the flow direction visually and adjust it without jumping to ports, just by having two elements selected.

IfcFM is now ready for use!

A common task on larger projects is to deliver asset registers and digital operations and maintenance manuals using standards like COBie. Previously, we offered a tool known as IfcCOBie with features to do this, but it was unfortunately an incomplete implementation and being one of the earliest offerings, had many bugs and mistakes which we’ve now addressed. You can access IfcFM via command line interface, library, or in the Facility Management tab in Blender.

IfcFM is now completely rewritten to offer a generic way to create tabular asset data with strict adherence to standards like COBie 2.4, COBie 3.0, AOH-BSEM, and novel vanilla pure IFC approach. To read more, check out the documentation. In collaboration with Emma Hooper from BuildDigital, one of the leading experts in COBie delivery, we have been carefully addressing many of the ambiguous or incomplete nooks and crannies in these FM specifications to ensure that we offer the most valid, strict compliance for users.

Like IfcCSV, IfcFM supports ODS, XLSX, CSV, and Pandas Dataframes. There is a generic code structure such that you can also easily write your own conversion if required for your project. It also supports federating multiple spreadsheets (such as from multi-discipline models) into a single spreadsheet, as well as bulk processing multiple models.

This now means that IfcCOBie is (finally) deprecated and older libraries like xlsxwriter and deprecated as well in favour of newer ones like OpenPyxl.

Continued progress on UI improvements

The previous release had a huge UI redesign, but not everything made it in time. We managed to make a bit more progress this cycle.

The active drawing settings UI have now been migrated from the camera tab into the Drawings and Documents tab. The settings to change drawing size have also been redesigned and consolidated into a single area to easily edit drawing width and height, as well as raster DPIs (rather than messing around with absolute pixel values). The drawing system is now more forgiving of manual deletion of properties and is more flexible with respect to manual editing of layouts and sheets in external software.

There is also a new placement panel in the Geometry and Materials tab. This consolidates coordinate, rotation, and derived coordinate data which was previously spread around. The material and profiles panel are also moved into the Geometry and Materials tab.

The duplicate systems panel has also been merged. There is also a new zones panel separate from distribution systems.

Actors, users, people, and organizations are now grouped into a new Stakeholders section.

Work in progress redesign of material and style management

The prior material and style system was mixed into various locations in the Blender interface - blurring the lines between the rules and capabilities of Blender materials and IFC materials / styles. This led to a huge amount of confusion and both real and UX bugs.

A start has been made on a completely new material and style system with some basic support for adding editing shading and rendering styles. You can also specify names when adding materials, and associate / unassociate styles to materials. When this is complete, it will completely override the vanilla Blender materials tab and offer a much more truthful representation of material and style assignments.

There is also a new representation items panel, which does not do much currently apart from indicate geometry types, but will later be used to assign styles, support shape aspects, material constituent links to shape aspects, and presentation layer assignments.

It’s not yet recommended to use these new panels for authoring.

New bSDD integration for classifications

The buildingSMART data dictionary is a cloud service that acts as a centralised cloud database of classifications, materials, and properties. There is now an initial implementation which integrates with the bSDD, so instead of loading from offline classification libraries, you can now select a bSDD service and choose from an online classification.

Classification in the bSDD can also include relevant properties that need to be set whilst assigning the classification reference. This is also implemented. This work was presented in the buildingSMART meetup in Norway.

In addition, the popular Uniclass classification library has now been updated to the latest July 2023 edition with a generic script available to generate any required Uniclass version. It should be noted that the Uniclass classification system available on the bSDD is currently outdated.

File association on Windows

Just like on Linux, double clicking files in Windows Explorer will now directly launch the BlenderBIM Add-on as a viewer. To enable this, open the add-on preferences window and follow the instructions.

More IfcPatch recipes!

IfcPatch got a number of new recipes and improvements to existing recipes. The ResetAbsolutePlacements recipe can now only affect placementes, geometry, or both. There is now a recipe to fix a Revit bug where they hardcode the Uniformat classification system. Another recipe fixes another Revit bug where classifications are placed on the occurrence instead of types. There’s also a new PurgeData recipe to purge IFC metadata and relationships.

Behind the scenes

A lot of work has been happening on the underlying IfcOpenShell library, with compiler warnings being addressed, and cmake build clean ups. Similarly the PyPI distribution has improved metadata to prevent installation on unsupported platforms or Python versions. As part of the new Cesium ecosystem grant, IfcConvert now has support for Earth-Centered Earth-Fixed glTF. There is also now support for IFC4X3 ADD2, which is one more step towards the final ISO version of IFC4X3.

More documentation

As with all releases, documentation has been increasingly polished, with a new introduction section teaching the basics about IFC and BIM, updates to IfcCSV and the selector syntax page. There are also new sections for IfcFM (and IfcCOBie removed), the BIMServer Plugin, BIMTester, bSDD library, IfcMax, and BCF. API documention is now written for the shape calculation utility module and the placement module. All relevant images in the beginners tutorial have also been recreated with the new interface.

So much more

It’s hard to capture absolutely everything which has changed, but here are a few more stragglers.

  • Array handling was improved and it got a bit more natural. Array duplication automatically produces a new array, arrays also can be duplicated partially (only selected layers). You can also remove layers of array just by selecting and removing it’s elements. All array constraints are now loaded when you open .ifc in BlenderBIM automatically.
  • Critical bug fixed where some drawing element filters for individual GlobalIds didn’t have any effect.
  • We’ve defined a way to mark in BlenderBIM manual openings - you can pin down booleans in Booleans section so they won’t get lost if profile/material based object gets regenerated.
  • Lots of representation issues were fixed that you may or may not have noticed before. There is now a prioritised list of geometric contexts that determines load order.
  • Similarly native element loading has been completely rewritten which now handles mapped items a lot more robustly.
  • It’s now possible to add openings to non-profile based meshes, with new support for IfcVoidingFeature based openings
  • Fixed the ability to duplicate grid axes.
  • The facet selector is now more stable when you use specific characters, and is now used in the advanced mode model loading.
  • New function improvements including better imperial formatting, fixed number rounding function, and new substring function.
  • Text annotations now use formatting functions instead of arbitrary code execution.
  • New annotations for dynamic XYZ or easting, northing, and elevation values.
  • A number of fixes for casting to tessellation, splitting elements by plane, and resizing to storey, which are all common cleanup operations when preparing for 4D animations.
  • Fixed critial bug with inability to create slabs in IFC2X3.
  • Various UX improvements to the spatial manager.
  • Fix inability to add inherited psets, random truncation of property set template names, and live-editing of property set templates to prevent the need to explicitly save.
  • IfcDiff can now visualise across linked IFCs and will forgive invalid geometry.
  • Various fixes to Microsoft Project XML calendar imports.
  • A number of date calculation bugs have been fixed when cascading schedules and calculating critical paths.
  • Resource costs are now inherited from parents, and an improved template for resource CSV imports.
  • IfcTester reporting is now more detailed, describing data type errors and percentage passes per requirement. A crash was fixed in the IfcTester UI.
  • IfcTester property audits are now twice as fast. Great news for huge model audits!
  • Native meshes are now automatically enabled when dense meshes are enabled for faster loading out of the box.
  • New debug mode to override display type.
  • New IFC tool to separate meshes into multiple objects (to replace the built-in Blender separate operator)
  • Fixed bug where flipping walls connected to roofs and slabs would fail.
  • Fixed crash when opening SVG drawings on some folders on Windows.
  • IFC2X3 fallback georeferencing psets are now available out of the box. The geolocation module and utilities now also support the IFC2X3 fallback method.
  • You can now flip beam origins.
  • Selecting similar predefined types now takes inheritance into account.
  • The shape utility now supports calculating projected surface area, with fixes for overlapping projections.
  • You can now select objects coloured by a colourscheme.
  • Fix multiple bugs and regressions related to IfcMaterialLists.
  • Improved UI for covering tool and new feature to generate floor coverings and regenerate it.
  • Fixed bug where native meshes had normal smoothing.
  • The get pset utility function now has a verbose mode to get IDs and classes for complex processing.
  • New preference to customise the app used to open sheet layouts.
  • Edited mapped profiles now works.
  • Fix critical bug where editing shared properties didn’t independently impact that single pset.
  • IfcCSV now supports list concatenation.

All changes

All changes can view the directly via the Git logs here:

Credits for this release (in order of commits via git shortlog -sn --since "2023-09-02"):

   150  Dion Moult
   146  Andrej730
    28  Sigma Dimensions (Yass)
    18  Massimo Fabbro
    16  Ryan Schultz
    15  Thomas Krijnen
     7  Dirk Olbrich
     4  Vukas Pajic
     3  Bruno PerdigĂŁo
     3  Bruno Postle
     3  Carlos Dias
     3  Gorgious56
     2  c4rlosdias
     1  A. R. S
     1  Andrej
     1  Claudio Benghi
     1  Hilko
     1  ceegartner
     1  isma3lMB
     1  taylor

Donors since the last release:

BIMvoice
Sogelink
OSArch - A GIT/IFC Interface in BlenderBIM.
Cyril Waechter BIM Insight
PlaniBIM SA
Randolph
Dr. Richard Hollmann
Daniel
Dion Moult
Brendon Reid
StefStap
Incognito
Guest
Haritonov Alexander
Jonny Knopp
carlopav
Jim
Matthew Fuller
Sven Amiet
Dumitru Minciu
Frode Lund Tharaldsen
Julio
Losepacific
Louis TrĂźmpler
Arun
Bedrossian Ádåm
Henning Munzel
Omar Zerhouni
bimage
ppaawweeuu
Lars
Abdelmalek
Benjamin Smith
Duarte Farrajota Ramos
Johnson Bankole
Konrad
Kristoffer Hunnestad Andersen
Leon ten Brinke
Marin Ljuban
Udo
bitenergie
Alexander Kleemann
Benny
Chidi
Cordero Architecture
Miguel
Stephen Cremin
Tim McGinley
cvillagrasa
Ari Pikkarainen
Bruno PerdigĂŁo
Carlos Dias
Christoph MellĂźh
Dirk Olbrich
Fabian Emanuel Kitzberger
Madars Siksna
Marcin Boguslawski
Rafel Bayarre
Royner
bclmnt
casiovadal
Aleksandra
Antoine
Felipe Raimann
Michael Ehemann
Valter Robson
bimo
daniele rossi
青龙弦
Marco Andrade
13 Likes

Wow … :heart_eyes:

Thanks to all !

Is it just me or are other also having problems “activating” the BlenderBIM
AddOn in Blender 4.1 or 4.2 ?
(It takes some time but finally I get just a warning)

I have still one working BBIM (latest official) in official Blender 4.02 (?)

I tried latest BBIM official as well as the latest nightly build on 4.1 and 2.

If I am the only one it may again be a problem with also using
the Speckle AddOn.

(But in the past it was vice versa, I could not install/activate Speckle
as long as BBIM was installed, but I could add it after and both were
finally running well beside each other)

Version 4.1 is in Beta for another month and 4.2 in Alpha so it’s usually not a very good use of developer time to solve problems in these versions before the official release or at least the release candidate which should come a week before release.

That might very well be due to a bug that’s outside of the addon’s scope and it will be resolved in the meantime. Cheers

1 Like

I do not expect developer Support for Alphas and Betas of course.

It would already help if other users that also tried to install the AddOn
in 4.1+ can confirm that they could activate it or not.

@noidtluom , I still experience ifc models with missing slabs and columns after import. Can you kindly assist?

From which App is the IFC export ?

Is the IFC complete in other IFC Viewers ?
(I use ODA’s OpenIFCViewer)
If really yes, it would be a BlenderBIM problem.

I had only one time in the past missing Walls.
That was because I exported them accidentally as “aggregated?”
(or similar term) Walls.
Which means something like a multy-ply Wall exported as a single
IFC Wall object - or something like this.
Which was not supported in BlenderBIM.
But Dion fixed that instantly as it is part of IFC specification and added
support for that (exotic ?) IFC type.

I’m afraid this drawing was actually done by a mr. Journey. Mid, Journey.