View Full Version : Holes in Walls for Windows

07 July 2003, 08:24 AM

I want to use Studio Max to design a house (amongst other CG stuff as I realize there is dedicated house design software out there). The trouble I am having is something I would have thought MAX could have handed easily. I would like to put a window in a wall and move the window around a bit until it looks right (i.e. move the window once it's already in the wall). For this to happen, I need to create the window, the wall and the hole in the wall. The trouble is, the hole needs to be able to follow the window around the wall when I move the window. I have found no way of doing this in MAX (v5).

Previously I used Realsoft 3D which has an excellent object tree and allows me to move instances of sub-objects around into other braches of the tree (i.e. take box containing the window and 'boolean subtract' instance of it from the wall hence making the hole that follows the window). However Realsoft 3D had some major rendering problems leaving artifacts everywhere when I tried to model a swimming pool in the same design (two extruded splines - inner and outer edge of pool with water and lip around edge).

Any ideas?



DJ Scorchio
07 July 2003, 09:45 AM
Well, im no expert myself, but the way i would do it would to be use a box primitive in the shape of the hole you want in the wall, then use it as a boolean again the wall ( <- try that tutorial) Then just make your window and lock it into the boolean object so they stay together.
Hope this helps :)

07 July 2003, 05:51 PM
Thanks for the reply.

I have tried the approach you mention also tried using groups instead of locks. However, as soon as the hole making box is involved in a boolean operation, the lock is broken (as is the group)


07 July 2003, 05:40 AM
Why don't you try using an extruded spline?

Make a square spline, then another one inside it, the hole, then attach them and extrude to the desired width.

Then when you want to move the window, just go down the stack back to the spline and shift the verticies.

Might be easier to constant boolean then unboolean.

Peter Ryskin
07 July 2003, 10:10 PM
You have at least two ways of getting "close". The simple one is to ignore your window (Assuming its not the details on the window but the view) and create your boolean as say, Operand A:Wall, B:Window Cutter, using Subtraction A-B. For ease, go to the Display/Update rollout on the boolean, select Result+Hidden Ops, Then modifer stack and expand the subobject level of the boolean you have just created. Click your cookie cutter (B) object in the viewport that will now be visible and drag it around all you want on the wall surface (A).

If you -need- precise placement of the window due to say, a complex windowframe that might obscure outside details, there's still a solution for that, albeit a bit more work (tons of steps that could be left out, but if you're a stickler =p);

Clone the wall you're going to use, right click properties and make the clone copy non-renderable. Hide it. This is to safeguard any fancy things on your wall.

Now non-uniformly scale the working wall to 200% length, and 200 height, leaving the thickness as is.
Cookie cut your window hole from said wall.
Create a clone of your window frame and hide the original.
attach your window frame to the wall so it aligns perfectly with your hole as you want it. Move the wall around as you see fit

(Step not needed, but...)
If you for some purist reason need the wall to be just the original layout, create a tube that is perpendicular to the wall.
Make sure the tube goes through the wall,
set Sides to 4,
rotate +45 degrees around its hollow axis,
modify inner radius to be smaller of(wall height, wall length)/2, outer radius to be the same*1.5 (for slack),
place it at the wall centre and non-uniformly scale it along the wall length untill the inner hole hits the walls original length.
Select properties, select see through, make the tube non-renderable.

Add in your windowframe to the wall mesh, using Collapse with the boolean option, leaving you hopefully with a usable mesh.

Create a boolean out of the tube and the fake wall, with the fake wall as operand (B) and using the same method as above, move it around till you find the perfect spot.
(extra step end=p)

Once found, go to the modifier stack and extract Operand B as a Copy, unhide the hidden window frame and place it on top. Hide your booleans, your clones, unhide the original wall, and there you go.

Have fun.

CGTalk Moderation
01 January 2006, 03:00 PM
This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.