In the CoH base editor, items could be moved and rotated, and that was pretty much it.
This could get annoying with some things, like floor tiles, insignia, flags, vents, cables, lighting, and so forth, because developers had to pick some sizes to make available (each size being some amount of developer time), and players were limited to just those sizes.
But what if some decorative items could be scaled (the whole thing gets bigger or smaller) or stretched (only part of it gets shorter or longer, in one direction) as needed?
Some examples:
[list][*]An SG insignia could be scaled to whatever size you need for the wall or floor it's on.
[*]The length of a flagpole, banner, or stand could be adjusted as needed.
[*]A floor piece could be resized in either or both of two dimensions, without stretching its texture pattern.
[*]A ceiling-suspended light source could have its height adjusted.
[*]An electrical junction box could have a conduit coming out of one side that could be lengthened or shortened as needed, without changing the scale of the box.
[*]A wall-mounted pipe with a 90 degree elbow could have two variable-length pipes extending from it, allowing it to fit wherever desired.
[*]You can finally have the right size bed for your Huge character.
[/list]
Further, by doing this you remove the need for arrays of repeated small objects to build a large object (think walls and floors), drastically reducing the object count and improving performance. You also remove the need for the devs to make several sizes of many base objects.
I can draw some examples and add it to this post if desired. Thoughts?
[i]Has anyone seen my mind? It was right here...[/i]
[img]http://img839.imageshack.us/img839/6149/control27.jpg[/img]
In some of the first 3D bases I built, I used [url=http://paragonwiki.com/wiki/Shelves]Small Bookcases[/url] to make beautiful wooden floors for my upper level "lofts" in my base. These objects were 1x4x4, and it took 256 of them (at 100 Prestige each) to make a 32x32 ft floor (one room block). The polygon count on these items was ridiculous, since they had books in them, but it was the only way to get that glorious wooden texture pattern of wood grain you can see here ... and even then, I had to do them front-to-front and back-to-back, alternating, in order to achieve that effect. Pretty much never saw anyone else ever do it, since it was such a mind-numbing process to actually DO (especially before floating objects got easier!).
Would have been WONDERFUL to have a stretchable "cube" that would just repeat the texture pattern at intervals on the faces that I could have made as large as I needed in order to only have to use [b]ONE[/b] object with only 8 vertices ... instead of 256 objects with probably tens of thousands of polygons "in" them that never needed to be seen (but still had to be accounted for by the rendering engine, creating massive video lag).
Eventually I had to move to using [url=http://paragonwiki.com/wiki/Tech]Tech Crates[/url] for flooring in my [url=http://img705.imageshack.us/img705/2531/techworkshop04.jpg]Tech Workshop[/url], simply because the luxurious wood look didn't right for a "technological" room.
[img]http://img705.imageshack.us/img705/2531/techworkshop04.jpg[/img]
Once again, being able to select a single object and stretch it, rather than build arrays of smaller objects, would have been a relative joy to work with, and probably would have greatly reduced the amount of data storage needed to record the collecting of items used to furnish my base with.
[center][img=44x100]https://i.imgur.com/sMUQ928.gif[/img]
[i]Verbogeny is one of many pleasurettes afforded a creatific thinkerizer.[/i][/center]
Sounds like a good idea. A question occurs to me: If we took a minimum sized "wood flooring piece" and stretched it to fit, would the wood grain stretch, or would we want to have a tile effect? And how hard would it be to install a switch between the two in the resizing window?
(still jealous that you guys could customize your bases this much ^_^)
Foradain, Mage of Phoenix Rising.
[url=https://cityoftitans.com/forum/foradains-character-conclave]Foradain's Character Conclave[/url]
.
Avatar courtesy of [s]Satellite9[/s] [url=https://www.instagram.com/irezoomie/]Irezoomie[/url]
Besides the flooring, things that would have benefited from [b]stretching[/b] in Redlynne's examples:
[list][*]stairways
[*]banners (we had to place those so that the base was inside the "floor", due to insufficient vertical clearance)
[*]lighting columns
[*]bookcases (the real ones, not just the ones abused into being flooring)
[*]conference table
[*]catwalks
[*]computer racks
[/list]
Things that would have benefited from [b]scaling[/b]:
[list][*]monitor screen
[*]salvage racks
[/list]
[i]Has anyone seen my mind? It was right here...[/i]
IMHO, the texture would tile. This is because we're [i]stretching[/i] the size, like a tiled background for a div element in CSS.
In the case of [i]scaling[/i], though, it would stretch the texture to fit. Think of a floor tile with a single SG logo in the middle of it. If you made the floor tile twice as big, you'd want the logo to be twice as big as well.
There's no need for an explicit switch. Which one happens depends on if you're stretching or scaling. The UI elements for stretching and scaling would be different. Guess I should sketch this.
[i]Has anyone seen my mind? It was right here...[/i]
[img]http://imageshack.com/a/img197/4062/ncjm.png[/img]
A few notes (subject to change; this is a suggestion thread, after all):
[list]
[*]Corner handles for scaling are only placed on outside corners, as seen from the camera. Hidden corners and middle corners are omitted. This is because trying to control scaling from those points is problematic at best.
[*]Face handles for stretching are only available on the faces that can be stretched. Note that the example piece (intended to be a floor piece) has constant thickness (one grid) and stretches in two directions (the handles on the far sides are hidden).
[*]Holding down ALT and dragging will move, even if you click on a handle.
[*]Holding down CTRL will select or deselect what is clicked.
[*]Scaling/stretching handles are only available if only one object is selected, or if all selected objects support scaling/stretching in that direction. (This is good for, for example, the times you have a line of poles and want to change all their heights together.)
[*]TAB selects the next object "down" from the one clicked, if several overlap. This deselects the object clicked/selected unless CTRL is also held down.
[*]SHIFT and drag constrains movement to one axis.
[*]Scaling could either always maintain aspect ratio, or allow distortions so long as the SHIFT key is not held down.
[/list]
[i]Has anyone seen my mind? It was right here...[/i]
Redlynne wrote:
"Would have been WONDERFUL to have a stretchable "cube" that would just repeat the texture pattern at intervals on the faces that I could have made as large as I needed in order to only have to use ONE object with only 8 vertices ... instead of 256 objects with probably tens of thousands of polygons "in" them that never needed to be seen (but still had to be accounted for by the rendering engine, creating massive video lag)."
I suggested this in another thread somewhere (looked around, couldn't find it). What I'd proposed are some Primitive Shapes that can be scaled, stretched and otherwise manipulated. Cube, Cylinder, Cone, Pyramid, Sphere are the first that come to mind. These could have tiled patterns applied from a library or just simple colors from a pallette, plus I'd like to have different specular finishes: Glowing, Metal, Matte, etc.
I'd suggest that Objects, such as bookcases and tables only be "Scalable", but I don't care too much really.
Plus, as Lin mentions, you could scale and paste a 2d SG symbol on pretty much any flat surface.
This would seem like a very simple thing to include and really expand the creativity. Again, I think all the simple, non-functioning building blocks should be FREE, with all the functional items, Teleporters, Storage Bins, Generators, etc. costing whatever currency we use to build the thing.
I also like Lin's simple control scheme, although If we are "snapping" to some kind of 3d grid, I hope it is very fine.
There's a lot more knobs to turn with your system. I'm thinking that an object from the library would already have a texture associated with it. My proposal would let them replace "short wooden pole", "medium wooden pole", "large wooden pole", etc. with "wooden pole"; you'd still have to choose from "wooden pole", "steel pole", "bronze pole", "concrete pole", etc. Yours would go a couple steps further to just "pole", with texture chosen from a menu (at least) or a set of sliders for color, transparency, lighting color, and specular and diffuse reflectivity (at most).
Though who knows, they're providing a lot of texture and color transform sliders for costumes; maybe they'll do the same for base objects...
The "stretchable" part is there to simplify the library. So, for example, you place a conference table, and it's got eight chairs: one at each end and three on each long side. You'd be able to "stretch" it to have up to eight chairs on each side, or shorten it to only six chairs total, or stretch it in the other direction to make it wider, etc.
Of course, you could go whole hog and make the chairs their own objects, and just resize the table itself, too. This would be more steps for the user, but would give finer size control. Meanwhile, the texture isn't getting stretched out of proportion.
Bookcases could stretch vertically by adding more shelves, or horizontally by lengthening the shelves and adding more books.
There would probably need to be two of those: one horizontal, for floors and tables, and one vertical, for walls and doors.
... Maybe a third for ceilings?
I'd prefer a user-controlled grid (that's why I started that argument way back about measurement systems), where there's some "minimum" grid size (on the order of a decimeter, maybe), but you could set a "snap-to" grid that's some multiple of that, to make it easier to line things up and place regular rows of, say, columns.
[i]Has anyone seen my mind? It was right here...[/i]
I'm sorry I don't have a very good handle on how to break into the block quotes thing.
I see your point about "pre-skinned" primitives. ::shrug:: just another way to get the same effect. You seem to agree in principle. But yes, I'd like to be able to pick Cylinder>Skin(texture/color)>Specular Finish(metal/matte/glowing/etc.), then stretch it with handles. Your way would work too, I guess, but sounds limiting without a huge catalog of pre-made objects. Besides, I LIKE turning knobs! :D
I didn't consider an object editor smart enough to "re-draw" repeating elements of an object, like chairs at a conference table, or rows of books on a book shelf. That would be great if it worked. I think it would be easier, in this case, to give us a fairly good variety of sizes (6/8/10 seat conference tables, (2/3/4/ shelf bookshelves), and let us stack them.
I also agree that it would be wise to give us Tables and Chairs seperately, so that we can deign our own set-ups.
Making the individual chairs separate objects would, I think, be better, otherwise it makes the object much more difficult to implement -- as a single object, you lengthen a table and chairs, the chairs along the sides of the table get wider, not get further apart until there's room for another chair on each side, at which point a new pair of chairs appears. Instead, stretch the table to the length and width you want, then drop chairs around it. This also has the beneficial effect of being able to make a double-wide chair for an SG member with a Huge body type and the like.
I just do this:
[list=1][*] Drag the bar on the bottom of the text area down so there's some actual room to work in.
[*] Figure out where you want to break into the block quote, then copy and paste (or just type) the [/quote] tag from the end of the block quote.
[*]Type your response to the preceding part of the block quote.
[*]Leave a blank line, then copy & paste the
Which requires less tech than a bunch of knobs. Thus more likely to be implemented. Also, remember, as [i]Spore[/i] and [i]Second Life[/i] taught us, if you give people a fully-free-form design system, you'll get a lot of self-propelled dildos.
And yeah, it is limiting. I like your way better, too. Bear in mind that my proposal is about adding dimensional knobs; yours is about adding a lot more knobs than that.
But I want to stop short of making it into something like Blender or AutoCAD. That's going to require a lot of dev support, and there are not many players that would truly be able to take advantage of it all.
Further, whatever objects there are, primitive or not, will need to work within the gridding system, which limits how they can connect to each other. This is more a problem for spheres than cylinders or blocks.
But that's the thing. Think about what the difference between a 3-shelf and 4-shelf bookshelf: a shelf gets added in the middle. So why not just have a way to "drag" a bookshelf object higher to add that shelf. The devs could implement that as (Bookshelf3) vs. (Bookshelf4), or as (BookshelfTop + BookshelfMid1 + BookshelfBottom) vs. (BookshelfTop + BookshelfMid1 + BookshelfMid2 + BookshelfBottom). For a large number (>4 each) of possible widths & heights, the latter route may be less modeling effort than the former. Either way, the user just sees it as "Bookshelf".
Where this really pays off is for things like pipes, which could be a whole mess of different lengths (1-50 grids?). In this case they only have to draw a few "steps" of the pipe and then repeat them, possibly changing the order up a bit. For example, you pick "Pipe" from the library and plunk it down. Starting length is 4 grids and each segment is 1 grid. Say there are six different "pieces" of pipe drawn by the art folks, and let's refer to them with the letters A through F. So the initial pipe is just: ABCD
Then the user wants a longer pipe, so they grab the stretch handle on the end and pull it out to 10 grids: ABCDEFABCD
Or maybe the CoX people don't want the repetition to be obvious and mix it up some: ABCDEFDBCE
The thing is that this "sequence" can be as long and jumbled as they want, and yet gives the illusion of a somewhat randomly-textured pipe without requiring the artists to draw 50 different pieces of pipe.
And the user is happy because they can place the exact length of pipe they want without having to "clip" any excess length inside some other object at the end of the pipe.
What you would do in that case is make the table only resizable in whole-chair steps, not in 1-grid steps.
But the separate-table-and-chairs option is still better.
[i]Has anyone seen my mind? It was right here...[/i]