1. Forums
  2. Discord
  3. About Mapcore
  4. Patreon Supporters
  • Login
  • Register
  • Search
This Thread
  • Everywhere
  • This Thread
  • This Forum
  • Articles
  • Pages
  • Forum
  • More Options
  1. Mapcore
  2. Discussions
  3. Level Design

Features you would like to see in a HL2 displacement editor?

  • Defrag
  • March 3, 2008 at 1:22 AM
  • Defrag
    • March 3, 2008 at 1:22 AM
    • #1

    I'm going to preface this post with an "it ain't done yet and won't be done for a while yet" message, so this excuses me when it comes to laziness.

    To learn some C#, .NET & XNA a while back, I started working on a little Bezier patch-based displacement editor (think a simpler Q3/Doom3 patch editor). Its working title is the "Bezier Bongo Displacement Machine Extraordinaire".

    The idea is simple -- you can build shapes using Bezier patches -- this lets you make really cool curved geometry (e.g a hallway arch that curves in two different ways) without resorting to the tediousness that is nudging potentially hundreds or thousands of vertices. Source obviously doesn't support Bezier patches, so the tool is going to tessellate the patches (already done and using Hammer displacement style triangulation) and spit out all of the vertices into a .vmf so you can load 'em in.

    What I'd like to know is what you good folks would like to see in such an editor, both in terms of allowing easy manipulation of objects (groups of patches and individual patches) and sub-objects (patch control points). This could also be in terms of prefabs -- pipes, toruses, curved walls, floors etc. I've got plans for a prefab creator amongst other things, so if I get suggestions I should be able to add 'em. Please note that since I'm using Bezier curves, this application isn't really geared towards making anything but smooth geometry. Unfortunately it cannot support things like terrain generation. I could possibly have a bash at that in the future, but right now I'm focussing on curved geometry .

    I plan to release the source once it's (relatively) finished, so other people can contribute and add their own features if needed, too. Given that I used it as a way to learn new languages and frameworks, it's probably a bit rough around the edges.

    Current features

    • [*:2os40wm9]Form-based. Has toolbars, resizable elements and all that good stuff.
      [*:2os40wm9]Patch creation. You can re-tessellate patches via subdivision just like hammer.
      [*:2os40wm9]Prefab patches. You can create arches, curved walls and a few other things. I plan to re-do the interface and put all of this stuff in a Hammer style "creation" form, complete with dynamic preview.
      [*:2os40wm9]Patch manipulation. You can select multiple patches, control points etc. and drag them around. You can also nudge using the arrow keys. You also see the control cage of the Bezier patch; this makes it easier to figure out which 'line' or section a point is in.
      [*:2os40wm9]Multiple views. Same as Hammer -- it has top, front, right and perspective camera views. Currently I can only show one at a time. I will eventually display more than one simultaneously.
      [*:2os40wm9]Orbiting camera option. This is a 3D package style mode where you focus the camera on the selection and then orbit around a selected object (bit buggy but hey).
      [*:2os40wm9]Customisable grid, including grid snap. I've got it set up to look almost exactly like hammer minus the highlighted additional grid lines every x units, but I can add them at some point

    Stuff not yet in

    • [*:2os40wm9]File saving and loading. I plan to allow saving and loading XML files so you can save your application settings & creations in the application's own format rather than just exporting to .vmf (so you could work on some geometry, save the bezier file and come back to it later).
      [*:2os40wm9]Exporting to .vmf (doesn't look like fun, in fact I'm dreading it )
      [*:2os40wm9]Textured mode. Texcoords are generated, but I'm just using wireframe at the moment.
      [*:2os40wm9]Undo support. Some sort of undo stack would be nice, but I have absolutely no idea how to go about creating this. Maybe I will do a bit of research soon as undo is very useful.
      [*:2os40wm9]Bug squashing. There's quite a few bugs and inconsistencies which have to be ironed out (e.g. in the perspective camera mode, nudging vertices is a bit dodgy). Moving things around is also a bit dodgy as the top left of the selection will move to the mouse cursor rather than dragging naturally. I will sort this soon I hope. The most annoying thing is that XNA is right handed which has confused my poor left-handed Direct3D addicted brain a lot. I'll have to eliminate all inconsistencies in my code to sort out winding order problems. Left handed forever! D:

    Drawbacks: Since I'm using 3x3 patches (9 control points per patch) it is not possible to represent curves perfectly. What this means is that curves will 'bulge' very slightly. If you survived it in Q3/D3, then I'm sure it won't be an issue. The reason I went with 3x3 is that it is much easier to actually control the end result. 4x4 allows the creation of curves that are almost indistinguishable from the real thing, but they are trickier to edit (you have to use a formula to get the control point values correct!) I've set the application up to be flexible, so I may be able to allow these to be used in future if people demand it, though.

    What it does mean is that if you make curved geometry in my editor, anything that must align with it perfectly (e.g. floor curve and the wall going around the curve) will probably have to be made using my editor, too (unless you like nudging vertices by 0.00001 units in hammer ...).

    Here's a couple of screenshots of what I've got so far:

    Screenshot one

    Screenshot two

  • Pampers
    • March 3, 2008 at 2:09 AM
    • #2

    awesome can't think of any other features than making displacements based of a heightmap image although there are some other ways to do that

  • dissonance
    • March 3, 2008 at 8:18 AM
    • #3

    Some sort of extrusion or lathing.

  • Sentura
    • March 3, 2008 at 11:22 AM
    • #4

    interesting. could you perhaps be persuaded into creating a particle effect editor next?

  • Punky
    • March 3, 2008 at 3:57 PM
    • #5

    I think it would be nice to have the ability to auto create basic (random?) Island shapes like cryengine 2 does.

  • Defrag
    • March 3, 2008 at 7:49 PM
    • #6

    Can you be more specific? If it's terrain based then it's probably not suitable for the editor I'm making.

  • Punky
    • March 3, 2008 at 8:33 PM
    • #7

    I saw a video of the cryengine where you could create a random basic landscape (a simple displacement like an island or a mountain) by the click of one button, you could also adjust the size and height of the landscape etc...

  • Sindwiller
    • March 3, 2008 at 9:18 PM
    • #8
    Quote from Punky

    I saw a video of the cryengine where you could create a random basic landscape (a simple displacement like an island or a mountain) by the click of one button, you could also adjust the size and height of the landscape etc...

    CryEngine 2 uses heightmaps for terrain geometry - as for the function you mentioned, it might be some advanced noise stuff That's completely not the thing Defrag is doing or what's even within the possible spectrum, as we're talking about the Source engine here.

  • Punky
    • March 3, 2008 at 9:22 PM
    • #9
    Quote from Sindwiller

    CryEngine 2 uses heightmaps for terrain geometry - as for the function you mentioned, it might be some advanced noise stuff That's completely not the thing Defrag is doing or what's even within the possible spectrum, as we're talking about the Source engine here.

    It would be cool if he could make something like that though and I have no experience with the CryEngine YET, but if making that for source is so impossible as you say it is than never mind, I have no other ideas for a displacement editor btw....

  • m8nkey
    • March 4, 2008 at 12:57 PM
    • #10

    Awesome stuff Defrag, I consider the displacement toolset one of the weakest elements of the Hammer interface. Judging by the screenshots your app looks capable of producing some really interesting shapes.

    I also think you're on the right track, focusing on smooth/curved geometric shapes. This is where the current toolset is really lacking. Everything you've mentioned, I've wanted in the past.

    One thing I'd love to see is an ability to automatically cap (or sew as it's refered to) any side of a displacement without requiring vertex manipulation to negate texture distortion. Let me know if you want some pics explaining what I mean.

    I'd also be happy to take this thing through it's paces if you want a beta tester, I love displacements

  • dux
    • March 4, 2008 at 1:25 PM
    • #11

    I'd like to see a feature that magically makes Hammer not 100 years old.

  • -HP-
    • March 4, 2008 at 2:40 PM
    • #12
    Quote from dux

    I'd like to see a feature that magically makes Hammer not 100 years old.

    ah ah! So true... I wonder when valve is going to make another editor, or at least improve the current one! [Blocked Image: https://migrationtest.mapcore.org/public/style_emoticons/default/mapcore_smilies/emot_shakehead.gif]

  • m8nkey
    • March 4, 2008 at 2:55 PM
    • #13
    Quote

    ":2zv84lu3]

    ah ah! So true... I wonder when valve is going to make another editor, or at least improve the current one! [Blocked Image: https://migrationtest.mapcore.org/public/style_emoticons/default/mapcore_smilies/emot_shakehead.gif]

    Off topic but is it really that bad? Why is it so popular? Source has the games I play and hammer has a knowledgebase and familiarity spanning back to the days of Worldcraft. I don't know shit but I'd guess Valve are more likely to build upon what they have rather than start from scratch.

    As I said, Defrag's displacement editor would take care of my only real gripe with Hammer.

  • Psyshokiller
    • March 4, 2008 at 3:05 PM
    • #14

    I think you should make it similiar to d3's patch/curve system.

    One important point would be, to be able to manually control the subdivisions horizontally and vertically.

    How would texturing them work?

  • Defrag
    • March 4, 2008 at 3:33 PM
    • #15
    Quote

    One thing I'd love to see is an ability to automatically cap (or sew as it's refered to) any side of a displacement without requiring vertex manipulation to negate texture distortion. Let me know if you want some pics explaining what I mean.I'd also be happy to take this thing through it's paces if you want a beta tester, I love displacements

    Yes, I'd like to see some pictures as that sounds like a useful feature

    Regarding testing it -- as soon as I have a version that has subtle (as opposed to very obvious) bugs, I'll put it up for consumption

    Quote

    One important point would be, to be able to manually control the subdivisions horizontally and vertically.

    Unfortunately I can't do this; Hammer's displacements are equally subdivided. I could probably allow you to split geometry to get the same(ish) effect, but I'm not sure you can get exactly the same shapes if you have to do this.

  • dux
    • March 4, 2008 at 5:49 PM
    • #16
    Quote from m8nkey

    ah ah! So true... I wonder when valve is going to make another editor, or at least improve the current one! [Blocked Image: https://migrationtest.mapcore.org/public/style_emoticons/default/mapcore_smilies/emot_shakehead.gif]

    Off topic but is it really that bad? Why is it so popular? Source has the games I play and hammer has a knowledgebase and familiarity spanning back to the days of Worldcraft. I don't know shit but I'd guess Valve are more likely to build upon what they have rather than start from scratch.

    As I said, Defrag's displacement editor would take care of my only real gripe with Hammer.

    Yes I really think it's that bad I've just come back to it after using Radiant and UnrealEd 4.0 and it feels as ancient and useless as old bones.

  • m8nkey
    • March 4, 2008 at 9:07 PM
    • #17

    Here's some pics trying to explain what I was talking about earlier with q3 style capping of displacements. It looks like your app disperses the patches evenly so this probably wont even be a problem . I didn't bother dispersing all the patches in this example as it would be tedious and they aren't visible anyway.

    [Blocked Image: http://i173.photobucket.com/albums/w57/m8nkey/dis1.jpg]

    [Blocked Image: http://i173.photobucket.com/albums/w57/m8nkey/dis2.jpg]

    [Blocked Image: http://i173.photobucket.com/albums/w57/m8nkey/dis3.jpg]

    The stretching on the indented displacements on this building was very tedious to resolve:

    http://%7Boption%7D[Blocked Image: http://i173.photobucket.com/albums/w57/m8nkey/wip060002.jpg]

  • skdr
    • March 5, 2008 at 9:38 PM
    • #18
    Quote

    ":197ezp99]

    ah ah! So true... I wonder when valve is going to make another editor, or at least improve the current one! [Blocked Image: https://migrationtest.mapcore.org/public/style_emoticons/default/mapcore_smilies/emot_shakehead.gif]

    Hey, we know you don't like it but you still need to yab about it everywhere? Almost like you're comparing it to Crysis editor which is completely different, engine and tools wise.

  • -HP-
    • March 5, 2008 at 11:00 PM
    • #19

    I'm not comparing it to nothing man, I was just expressing my opinion about the subject, besides it would be an error comparing the CE2 or UE3 editors to Source engine editor, it's totally different engines/editors, besides CE2 and UE3 are recent engines.

    Because the two companies that made the two engines mentioned above, actually updated their editors withing each game release, HL2 has been released in November 2004, and the editor is still exactly the same on 2008.

    It's not that valve doesn't make good games with it, I mean shit, look at Portal, TF2, EP1 and EP2... all excellent games, but the editor is definitely getting outdated, not to mention the modding tools!

    Erm, sorry for the off-topic Defrag, besides this matter has already been discussed in another topic!

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!

Register Yourself Login
Discord

The Mapcore Discord is our lively IRC channel of the 2000s reborn. Chat about level design, gaming, and more.

Latest Posts

  1. Tangerine

    Harry Poster
    July 18, 2026 at 11:10 AM
  2. Any of the old guard still around? D:

    Warby
    July 12, 2026 at 8:23 PM
  3. About our archived forums

    Thrik
    June 30, 2026 at 2:12 PM
  4. Mapcore Discord

    mason_fan123
    June 24, 2026 at 8:52 PM
  5. [CS2] Valley

    Serialmapper
    June 22, 2026 at 11:56 AM
  6. Free Music / SFX Resource - Over 2500 Tracks

    Eric Matyas
    June 18, 2026 at 12:32 PM
  7. Pango [WIP]

    Elowen
    June 11, 2026 at 10:13 AM
  8. [CS2] Dvina

    Jeremy Rivera
    June 11, 2026 at 10:03 AM
  9. Bridges 2.0 by NEXSIDE, MAP SHOWCASE. ( Steam Workshop )

    MrTrane18
    June 1, 2026 at 7:46 PM
  10. Classic Maps Reborn For CS2

    SillySpaceCat
    May 31, 2026 at 10:33 PM

Users Viewing This Thread

  • 2 Guests
  1. Privacy Policy
  2. Contact
Powered by WoltLab Suite™