Texturing Architectural Objects

A forum dedicated to the Draft, Arch and BIM workbenches development.
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
User avatar
yorik
Founder
Posts: 13640
Joined: Tue Feb 17, 2009 9:16 pm
Location: Brussels
Contact:

Re: Texturing Architectural Objects

Post by yorik »

Yes the principled shader is certainly the way to go.. It's becoming the default "all-in-one" shader in 2.80, and works in both eevee and cycles. I added it already to the exporter, and all that would be needed to extend would be a) detect if an object has a texture, b) create corresponding blender textures, c) bind them to the principled material

There might be some mapping issues between freecad and blender, though

It's really time to host that exporter to a better place than that gist...
User avatar
s-light
Posts: 119
Joined: Thu Feb 12, 2015 11:39 am
Location: Germany, Hofheim am Taunus
Contact:

Re: Texturing Architectural Objects

Post by s-light »

i have created a github repository for the importer plugin:
https://github.com/s-light/io_import_fcstd

and already started to 'split up' the code, so it is easier readable / understandable -
or at least that is my hope ;-)

i created a feature-request for this:
https://github.com/s-light/io_import_fcstd/issues/1
if someone has more info how to do it please add it there :-)
(i did not try the WB myself yet..)

sunny greetings
stefan
User avatar
yorik
Founder
Posts: 13640
Joined: Tue Feb 17, 2009 9:16 pm
Location: Brussels
Contact:

Re: Texturing Architectural Objects

Post by yorik »

Great job @s-light! I am delighted if someone would help carrying and maintaining this importer further.
I want to start working on an exporter too, that would produce Shape-based geometry right from the blender meshes... I think that could be very useful
User avatar
s-light
Posts: 119
Joined: Thu Feb 12, 2015 11:39 am
Location: Germany, Hofheim am Taunus
Contact:

Re: Texturing Architectural Objects

Post by s-light »

thanks yorik ;-) i will do my best ;-)

would you mind take a look at my questions regarding 'missing body objects with external scripts' at
https://forum.freecadweb.org/viewtopic. ... 34#p338634 ?

i made good progress with the 'App::Part' and 'Array' things and will write about it tomorrow in that thread...

regarding the exporter - i like the idea - what about doing it as importer in FreeCAD?
this way you do not need to write to some not visible files... → only read from external..
let us continue this in the other thread so we do not 'spam' this topic here to much.. :lol:

on topic:
if anyone has or can create a simple example FreeCAD file with the Texturing thing
and some explanations what is expected so i can test and experiment with this would be great!
post it here or add it to the repository with a pull request :-)

sunny greetings
stefan
JellyPalm
Posts: 157
Joined: Sun Mar 29, 2020 12:22 am

Re: Texturing Architectural Objects

Post by JellyPalm »

Observations on Arch Textures in FC 0.19:

First: Big Ups for latest FC version. seems much more stable than three weeks ago version...
Also I'm liking the ArchTexturesWB tools - easy to use.

XWithTextureWIP.png
XWithTextureWIP.png (227.99 KiB) Viewed 1216 times

However a few points on ArchTexture WB tools.


1.
It seems you need to allocate a new ArchMaterial to each instance of ArchTexture required.

This is a bit different to the help (https://github.com/furti/FreeCAD-ArchTextures), which suggests one material can be allocated to many textures (which makes sence).
However, doing this made my model crash.

This is perhaps because in my model there are a lot of separate (unconnected) walls etc, whilst in the Help it looks like the very few walls are based on a polyline - perhaps...?
This may be a bug that just hasn't manifested in tests with a few simple continuous walls. I am interested in others experiences.

2.
When you allocate material and Texture, a TextureConfig Object appears at the bottom of the Tree.
So far so normal.
But the TextureObject is not referenced in the Properties of the structure which has had a Texture added (ie a wall), and I cant Drag-and-drop it as a Child into the Structure in question (ie into the wall parent). (i tried groups, parts etc - It just wont go)

I assume this is something to do with the preceding discussion threads (which I tried but failed to follow).
However it means a lot of random Texture objects sitting in the lost objects graveyard at the end of the tree.

As a temp solution would it not be possible to be able to drag it up and have it sit as a child of the relevant structure (wall, roof etc) - a bit like a CutVolume does?
That at least would be consistent with the usual heirarchy (even if it wasn't active).

3.
I tried exporting the .IFC model (with Textures) into Blender and BimVision.
Unfortunately, neither application wants to acknowledge my beautiful brick and tile-work!!

which brings me to a general question: is this because IFC's don' t have texture info, or is it because the texture info needs to be allocated to a specific IFC-related property attribute location? The online discussion is uninformative on this point except for learning that there may be an ifc attribute called IFCSURFACESTYLEWITHTEXTURES.

(On this, I noticed that in Properties / IFC / IfcType; if I select BuildingStories for my Floor levels, then the exported .IFC when opened in BimVision will recognise my FreeCAD Levels and be able to separate them spatially - on demand.
Is it the same with textures? If you allocate them to the correct .IFC Attribute location will they display in an texture-enabled IFC reader?


cheers,

OS: Windows 8.1 (6.3)
Word size of OS: 64-bit
Word size of FreeCAD: 64-bit

Version: 0.19.22960 (Git)
Build type: Release
Branch: master
Hash: c5a4b01d2e4218bcc0eb6650337650a6c65ef0e4
Python version: 3.6.8
Qt version: 5.12.1
Coin version: 4.0.0a
OCC version: 7.3.0
Locale: English/United Kingdom (en_GB)
paullee
Veteran
Posts: 5097
Joined: Wed May 04, 2016 3:58 pm

Re: Texturing Architectural Objects

Post by paullee »

@furti develop this as Add-on but seems not have development recently.

Maybe someone can help developing, fixing bug, adding features ?
Post Reply