Can we drop 'wrl' 3D models and keep only 'step' libraries, keeping artistic rendering?

this is in fact a way to check that material properties are not written exporting to STEP format

thanks

those are the default values applied…
to check the actual material values you need to use some python commands, i.e. create a cube and digit:

b=App.ActiveDocument.ActiveObject
bv=b.ViewObject
bv.ShapeColor = (0.859, 0.738, 0.496, 0.0)
bv.ShapeMaterial.Shininess = 0.40

then export the cube as STEP and import it and check the values:

b=App.ActiveDocument.ActiveObject
bv=b.ViewObject
print(bv.ShapeColor)
print(bv.ShapeMaterial.Shininess)

you wll see that Shininess won’t be maintained

@Seth_h @marekr

good news, in kicad 6.99 (full info at the bottom) STEP import is already supporting Transparency and Transparency per faces…
So the thing to be implemented is quite limited.

We only need a table of association between the canonical colors and appearance materials, to attach material properties to 3D viewer display, to keep nice rendering without the need to keep the double library of 3D wrl and STEP models.

I’m attaching a minimal board with STEP models to check the transparency results:
(cube green transparency on shape, cube blue-red transparency on red face)
transparent-step-test-prj.zip (101.9 KB)

here the kicad version info:

Application: KiCad PCB Editor (64-bit)

Version: (6.99.0-3300-g087550ebd3), release build

Libraries:
	wxWidgets 3.1.7
	FreeType 2.11.1
	HarfBuzz 4.2.0
	FontConfig 2.14.0
	libcurl/7.83.1-DEV Schannel zlib/1.2.12

Platform: Windows 10 (build 18363), 64-bit edition, 64 bit, Little endian, wxMSW

Build Info:
	Date: Sep  9 2022 07:24:53
	wxWidgets: 3.1.7 (wchar_t,wx containers)
	Boost: 1.79.0
	OCC: 7.6.0
	Curl: 7.83.1-DEV
	ngspice: 37
	Compiler: Visual C++ 1929 without C++ ABI

Build settings:
	KICAD_SPICE=ON
2 Likes

I’ve just opened an issue at GL repo …

feel free to place comments there

@stambaughw I just realized I missed to ping you in this discussion…
Could you please have a look at this?

@Seth_h is there anything I could add to this thread to help in defining the requirements?

This only needs to be consolidated into a single document stating what you’d like to change and where. It sounds like the changes might be smaller than anticipated, but it would be good to hear the full plan

Please note that if you really commit that, the pipeline to Blender will lead to not so beautiful results due to a lot more work and inferior data format. This is not encouraging Blenderheads, due to the fact that STEP does not deliver any triangle data nor carries any UV-data. My Kicad Browserviewer relies on VRML format. I put hold on the development until this will be hopefully rejected. Don´t kill VRML export. Pretty PLEASE! See what your missing in Realtime-3D in your browser. [Kicadviewer: Loads a bit slow the first time. Kicad-Webviewer Please be patient during first load (ca. 30-60 seconds black window)

Sorry, Forum does not allow me to post screenshots. See here: Github Readme with Screenshots.

Source files and Blendfile included! Change it to your likes, put your own PCB on the web.

Please consider that the suggestion is NOT to abandoning wrl format, but just avoid to double the library format.
The option to have realistic materials and exporting 3D to wrl with those attributes will be kept…

That was already pointed out at this thread here

And about a kicad 3d html viewer you can also consider this wordpress plugin

with a demo three.js webgl - loaders - kicad vrml loader

Thanks for the fast answer. “Without the feature to display enhanced material properties”. I see where the train goes. In that case you really could use such an inferior viewer like you recommended. No shadows, no ambient occlussion. Slow with more complex PCBs. No environment world texture. Yuck, no thanks. Did you even click on my link?

It seems you missed the content of the post.
Materials will be kept.

You link to the same thread where we already are and then you seem not to remember your own words. See your own fourth contribution further up. Oh, you wrote that WP plugin. I take back the “inferior” in that case :wink:

I already had contact with Discourse. See Blenderartists and Armory3D forum for example.

No, you don’t read… Kicad will keep wrl material when exporting, so you are missing completely the point.

Hehe. Just could not imagine that the information is kept despite removing the wrl libs. Then i still do not understand why you wrote “Without the feature to display enhanced material properties” further up? If any info is kept and the same wrl exported why all the fuss?

Hehe, you missed who created kicad 3d libs …
May be ‘he’ knows quite well wrl attributes :rofl:

Well i am new here. And you seem to ignore my questions, even if i have them repeated. Why is that?

Ok, you still seems are not able to read what I have written:

As now kicad handles STEP models without adding material properties…

Trying to read the thread again, I can see why there arises some confusion. Can you answer clearly: If the VRML models are removed from the library, will the result of the VRML export be kept intact, including all material properties?

1 Like

I just though the title was self explicating:

Can we drop ‘wrl’ 3D models and keep only ‘step’ libraries, keeping artistic rendering?

and later in the thread:

The suggestion is not in the direction to reduce the abilities of KiCad, but only to avoid to duplicate the 3D model libraries, just to add nice and useful material rendering properties…

without wrl 3d models in libs, but with the internal color to material association table, nothing will be missed, simply the libs will be only on STEP format.

So the answer is “yes in the future and not nowadays”?

1 Like