LDraw.org Discussion Forums
Slope textures - Printable Version

+- LDraw.org Discussion Forums (https://forums.ldraw.org)
+-- Forum: Models and Parts (https://forums.ldraw.org/forum-18.html)
+--- Forum: Parts Authoring (https://forums.ldraw.org/forum-19.html)
+--- Thread: Slope textures (/thread-1430.html)



Slope textures - Orion Pobursky - 2011-11-21

Whilst building the Super Star Destroyer, a thought occurred to me: we have no way of specifying what faces of a brick (if any) required the slope texture. I see 2 solutions:
  • Use the existing !COLOUR specification to set a new main color for linetypes that need a slope texture. The disadvantage to this being that it would break MLCad. Yet another reason why Micheal should open source the program.
  • Make a new meta, something like !SLOPE_TEXTURE, that would go before the linetypes that need slope texture.



Re: Slope textures - Don Heyse - 2011-11-21

Don't limit textures to just the slopes. That's silly. Perhaps it's time to take another look at this approach.

http://www.facebook.com/media/set/?set=a.1332726248194.2048041.1532162912&l=4199f78c01


Re: Slope textures - Orion Pobursky - 2011-11-21

I agree but there's a big technical difference between texture mapping a picture and specifying that a certain quad/triangle should have a homogenous texture.


Re: Slope textures - Don Heyse - 2011-11-21

I suppose. How about !BUMPY since it's more of a hint to render with bump mapping than texture mapping?


Re: Slope textures - Orion Pobursky - 2011-11-21

I'm actually leaning toward option 1. MLCad is quickly becoming a millstone around our necks. At some point we need to stop worrying about breaking MLCad and I say the sooner the better.


Re: Slope textures - Don Heyse - 2011-11-21

The slopes aren't really a different color. They just have a different surface.


Re: Slope textures - Orion Pobursky - 2011-11-21

I agree. I guess I wasn't clear but option 1 is intended to be a new "main color" in the vein of colors 16 and 24.


Re: Slope textures - Travis Cobbs - 2011-11-21

I'm not sure I fully understand what you're advocating, so perhaps you could give more detail. Unless I misremember, there are varying degrees of "bumpy" in sloped LEGO bricks, so simply stating that something should be bumpy probably isn't a good solution.


Re: Slope textures - Orion Pobursky - 2011-11-21

Good point. I totally forgot about the fact that the slope roughness varies. In that case a meta command makes more sense.


Re: Slope textures - Tim Gould - 2011-11-21

It's for this reason I don't think anything should be done at an official level.

We already leave off some details (eg. hollow/filled underside studs), textures on some parts, smoothed edges on tiles/mini-slopes etc. and relegate any treatment of them to rendering part libraries. This, IMO, is how it should be.

As I see it LDraw format is there predominately as an instructional format.

But if you do decide to go with it I'd favour a leading meta. That way you're not breaking anything, a smart renderer can pick it up, and we don't have to duplicate every colour.

Tim


my humble thoughts on this - Steffen - 2011-11-24

I think that we should be even more generic here than just surface texture,
and apply the usual mechanism you do in rendering: subsuming this as "material" :-)

just some quick thoughts for a downwards-compatible syntax extension:

0 !MATERIAL metal roughness=polished
...(lines of type 1,2,3 go here)
0 !MATERIAL metal roughness=mat
...(lines of type 1,2,3 go here)
0 !MATERIAL abs default
...(lines of type 1,2,3 go here)
0 !MATERIAL abs roughness=0.5
...(lines of type 1,2,3 go here)
0 !MATERIAL glass
0 // the previous line really means glass, not plastic, for example used in light bulbs
...(lines of type 1,2,3 go here)
0 !MATERIAL rubber
...(lines of type 1,2,3 go here)
0 !MATERIAL copper
...(lines of type 1,2,3 go here)
0 !MATERIAL thread
0 // no, not a computer thread. a real, physical thread. some LEGO models use them :-)
...(lines of type 1,2,3 go here)
0 !MATERIAL paper
0 // the previous line could be used for stickers :-))

etc.

please don't take this literally,
I am just posting this here to tickle your imagination ;-)

the !MATERIAL syntax would simply switch to some material mode until a different material instruction is encountered.


Re: my humble thoughts on this - Tim Gould - 2011-11-25

I like this thought.

But I'd suggest have a start and end and assume that all else is plain ABS. That way it goes back properly.

0 !MATERIAL rubber
etc.
0 !END MATERIAL

Tim


begin and end of !MATERIAL - Steffen - 2011-11-27

I like that turning on and off of material.
That way it works similar to the already existing
0 BFC NOCLIP
...
0 BFC CLIP
section.
However, what I dislike about your suggestion is the use of 2 separate keywords
!MATERIAL
!END
for the same thing. I would better prefer
0 !MATERIAL rubber
...
0 !MATERIAL end
, so the keyword !END is avoided. Or, to be more syntactically similar to the NOCLIP/CLIP sections, we could also do
0 !MATERIAL rubber
...
0 !NOMATERIAL
but I find that less elegant. My goal would be to use the same keyword for the begin and end statements.


Re: begin and end of !MATERIAL - Travis Cobbs - 2011-11-28

I agree that if something like this were done, all lines should begin with !MATERIAL (or something similar; the point being, only introduce ONE new meta-command). In fact, I think !MATERIAL should require one of the following three sub-commands as the first word after !MATERIAL: BEGIN, END, and NEXT. The NEXT sub-command would mean that the material specification applies to the next line only. BEGIN and END produce a block of lines using a material.

Additionally, just as an aside, the spelling for the non-shiny finish is matte, not mat.