opencax / GSoC

Google Summer of Code Projects
31 stars 14 forks source link

Interface to easily create glTF compatible materials for IFC objects #73

Closed Moult closed 10 months ago

Moult commented 1 year ago

Outline

3D building models typically have very simple materials. It is possible for them to have complex materials and textures, compatible with the glTF standard. Right now, there is no interface to allow users to easily create these node setups and visualise these beautiful textures.

Your job is to design and create an interface in Blender to allow users to quickly select image textures, bump maps, shading styles from drop downs, and so on. This would then apply the relevant materials to the selected objects.

Skills

Difficulty

Easy

Size

Medium

Additional Information

lah3oa0sj8lt

thejastm15 commented 1 year ago

Hey i am intrested in this project for GSoC. I have basic knowledge of blender and python and i want to learn more by participating this project.

brlcad commented 1 year ago

There are lots of ways to go about this project, but might be useful reference to check out the Blenderseed plugin that leverages the nodal editor in Blender to specify complex materials and textures for use with the Appleseed renderer. This is very similar if not identical to what is needed for exporting glTF-compatible material shader networks. The Blenderseed code could be adapted to export both, or simply used as a code reference for understanding how to make a Blender plugin. It has nice docs too: https://appleseed.readthedocs.io/projects/appleseed-blenderseed/en/2.0.0-beta/

brlcad commented 1 year ago

This is also potentially a project of mutual interest to BRL-CAD as it received support for glTF and OSL shaders (via appleseed rendering) just this past year. Happy to support any collaborative goals.

Moult commented 1 year ago

@thejastm15 great! Essentially there are a few ways to set up material nodes in Blender that are considered to be "gltf compatible".

However setting up these nodes requires you to know the node setups https://docs.blender.org/manual/en/dev/addons/import_export/scene_gltf2.html

It would be good to have an interface to allow users to one click add and change material settings, and the node setups are always correct.

In addition, doing things like one click add image plane (in a gltf compatible manner) is very useful for AEC, like for modeling signage.

thejastm15 commented 1 year ago

@Moult how to connect with the commnity

Moult commented 1 year ago

@thejastm15 the best place is osarch.org/chat via either IRC or Matrix. See you there!

vermayuvraj commented 10 months ago

@brlcad Hello I am interested in that project for GSoC 2024. I have intermediate knowledge of blender and python and i want to learn more by contributing and participating in this project.

Moult commented 10 months ago

Sorry I think this has now been implemented.