• 🏆 Texturing Contest #33 is OPEN! Contestants must re-texture a SD unit model found in-game (Warcraft 3 Classic), recreating the unit into a peaceful NPC version. 🔗Click here to enter!
  • It's time for the first HD Modeling Contest of 2024. Join the theme discussion for Hive's HD Modeling Contest #6! Click here to post your idea!

3D Model Viewer

Level 29
Joined
Jul 29, 2007
Messages
5,174
It's not about the design. It's about the whole search system inside model viewer, it's stupid. And no one would even use that thing over the comfortable one in Hive resource section.

I liked it better when you clicked on a model resource and clicked the option to "View in 3D" and it automatically viewed the resource model in 3D, without any useless crap.

Ok then, that's what you think, but I like having a searchable gallery in addition to the viewer.
I am not entirely sure what your issue is, though, since it still opens the viewer directly when you click on a "View in 3D" button.

Browsing from my phone right now, so can't check this. When finding a model I like using your search, is there a way to open a model I found in the thread view?

I am not sure what "thread view" means.
You can press on any result to open the viewer, and there's also a redirect to open it in the old viewer, if you so desire.
 
A Void, you are an extremist in being dislikeable. Please stop it.

Stop what? dislikeable? I was just stating my opinion. I never ordered anyone to change anything or remove anything. I stated my preferable opinion, it's like saying that Obama is an extremist in being dislikeable.
 
  • Like
Reactions: Rui
Level 39
Joined
Jul 26, 2004
Messages
1,481
Doing the hard-refresh worked for me. I was wondering why I couldn't see the models all of a sudden.

I think it's pretty cool. It looks more simple and stylish now, although a lot less features. If I want to change TC, disable geosets, watch wireframe etc I have to switch to the old viewer. So as it is right now I prefer the old one. But I'm guessing this one isn't completely finished yet.

Search function is really cool although, it seems, not complete. If I search for my own username like Deolrin did, some of my models show up but not all of them.

If some more work was done on this I think it could be a very good update to the viewer, and calling it useless crap is greatly exaggerated and quite uncalled for.
 
Level 29
Joined
Jul 29, 2007
Messages
5,174
Did it work for you?
Cuz it is still the same after ctrl + f5.

I have problem with the viewer! When I click the view this model then it shows me some weird thing and asking to type the model. After I search for the model, it took me very, very long and it doesn't work at all! It just hangs there... What now? :(

Same for you - Ctrl + F5.
If that doesn't work, both of you can open the console (F12) and report any errors in there.

I mean that if I find a model through your viewer, I would like to be able to get back to the model thread where I can download and so on.

That is a good idea.

Search function is really cool although, it seems, not complete. If I search for my own username like Deolrin did, some of my models show up but not all of them.

Ralle?

-----------

On a different subject, is the documentation of Art Tools available anywhere outside of the Art Tools installer?
 
Last edited:
Level 29
Joined
Jul 29, 2007
Messages
5,174
So I started working on a better client, but honestly, it's pointless. I don't know how to design anything visual.
For reference, I tried following the design of Blender, but HTML and CSS are just...eh.
The viewer library is public (and probably became pretty stable with my last commit). If you want, you can make a better client.
 
Level 29
Joined
Jul 29, 2007
Messages
5,174
I just read the Art Tools documentation (thanks to Mechanical Man).

I am incredulous.
I have stated many times in the past that I want information about the format. I have asked many of you for it, many times.
Did it really never occur to you that a document that states exactly how most of the format works IS EXACTLY WHAT I WANTED?
I literally wasted months over experimenting with things, most of which are still not correct, and they are all written down plain and bold by Blizzard.
I am incredulous. And angry.
 
Last edited:

Kyrbi0

Arena Moderator
Level 45
Joined
Jul 29, 2008
Messages
9,492
Hey! That's a pretty cool new Model Viewer ya got there, GhostWolf! I like the new Search function, and (after a hard reset) the models load pretty fast. My only issue now is that, for some models, the modeler has an entirely different thing in the Portrait, and I can't differentiate the two (as we could in the old one).

However, there's several bits of functionality (as Tauer pointed out) that are on the old one but not the new one, so I imagine it's still a WIP. Either way, thanks for the hard work!

I just read the Art Tools documentation (thanks to Mechanical Man).

I am incredulous.
I have stated many times in the past that I want information about the format. I have asked many of you for it, many times.
Did it really never occur to you that a document that states exactly how most of the format works IS EXACTLY WHAT I WANTED?
I literally wasted months over experimenting with things, most of which are still not correct, and they are all written down plain and bold by Blizzard.
I am incredulous. And angry.
Do you mean that the Art Tools contain a spec of the MDX file format along with explaining text? Holy fucking crap.
Same here. I'm sorry, I had no idea the Art Tools Documentation had all that. Heck, I don't even have 3dsMax and I have the Art Tools Doc... Coulda sent it your way. Sorry. :<
 
I searched through the whole art tools documentation and I can't find any info about mdx/mdl format. I don't get where you noticed that. There is some info animation names, event objects, but everything is already known. There is some info about particles and materials, but that is more max specific and most of that info in mdx/mdl format is known already for years.
 
Level 29
Joined
Jul 29, 2007
Messages
5,174
Actually most of the "known" things are wrong, and are plain guesses made by Magos (for example, what is "Add Alpha"? the documentation doesn't state of its existence).
Other things that he didn't implement were guesses by me.

And yes, half the information about materials, particle emitters, and other objects, were mostly guesses.
It might seem like small things, but a whole lot of time was wasted on those small things, and while the guesses we made got the results to be sort-of-usually-ok, they aren't actually correct.
 
Level 29
Joined
Jul 29, 2007
Messages
5,174
Don't have the motivation to start changing too many things, but I did change modulate 2X to actually do what it's supposed to do (e.g. Undead Obsidian Statue).
And added support for the no depth test/set overrides.

Removed code that was based on some of the previously mentioned baseless guesses, rendering seems to be correct for the models I tested (tested against the World Editor with lighting disabled).
Most notably, team glows now actually match the game.
 
Last edited:
Level 29
Joined
Jul 29, 2007
Messages
5,174
However I personally miss the "view wireframe" function. Although it showed a transparent wireframe view it was nice. A solid wireframe function is prefered though.

The polygon mode is now one of none/solid/wireframe/both, so what you want is actually already implemented, there's just no visual interface for it.

But you can always use the console!
JavaScript:
viewer.setPolygonMode(3)
<insert troll face>
 
Level 29
Joined
Jul 29, 2007
Messages
5,174
Deleted more guess-y code, which should fix some layers not being rendered.

Alright. So I wanted to try it out by using Sellenisko's model: http://www.hiveworkshop.com/forums/models-530/nozdormuthetimelessone-239153/
First opening the model in the new viewer then clicked the "open in old viewer". The model does not show up.

It encounters an unsupported format error, probably forgot a .mdl->.mdx conversion somewhere.
Not going to change the old viewer, because literally the whole client would need to be rewritten, since most of the library changed since then.
 
But still I can't believe noone of model viewer creators ever saw the art tools documentation, after all who is programming 3D is usually capable to do a decent simple 3D model and to do that you need 3dsmax. Or at least have a modeler buddy who does that with 3dsmax. Good that you actually came with an idea of taking a look in art tools.
 
Level 29
Joined
Jul 29, 2007
Messages
5,174
Are you planning on making a similar program that is independent from Hive. Like Magos model editor? Just upgraded with proper corrections?

The viewer library is independent of the Hive, however it's written in JavaScript, which is mostly a browser language.
There are non-browser variants (e.g. NodeJS), but it's unlikely that I'll bother.
It also doesn't know how to read MPQs, so that makes it far less useful for local use.

Of course, porting it to C++ wont be too hard, but really isn't worth the effort.
 
The viewer library is independent of the Hive, however it's written in JavaScript, which is mostly a browser language.
There are non-browser variants (e.g. NodeJS), but it's unlikely that I'll bother.
It also doesn't know how to read MPQs, so that makes it far less useful for local use.

Of course, porting it to C++ wont be too hard, but really isn't worth the effort.

Strange, somehow I keep seeing some of War3.MPQ models that are straight from the game inside the viewer's search. I was thinking that it used MPQ from the database..
 
Level 29
Joined
Jul 29, 2007
Messages
5,174
Strange, somehow I keep seeing some of War3.MPQ models that are straight from the game inside the viewer's search. I was thinking that it used MPQ from the database..

The viewer library asks for the model path, e.g. "units/human/footman/footman.mdx". It's the hive's (or any site that wants to use it) responsibility to return the correct file.

It'd really help if there was a tab to the side of the new viewer, where you could cycle through bone/attachment/event object/particle information, animations, and a texture display.

Might be a bit much to ask, but for learning model editors, it might be extremely useful. Something to consider later on.

Like the rest of the stuff, this requires designing UI. I don't know how to design UI.
 
Level 29
Joined
Jul 29, 2007
Messages
5,174
Added support for spawn event objects (SPN), though it is unknown to me how parts of them work.
I tested on Illidan Evil, and there are the following issues:
1) The footprints in demon mode don't actually match the location of the feet, the nodes are literally in the same position (is this how it looks in the game?).
2) The blood spurts in the death animation face the opposite direction, however no information about this is given by the model (hard coded??).
3) Footsteps aren't spawned in the water walk variation (as the model dictates), yet they are spawned in the game (??).
 
Added support for spawn event objects (SPN), though it is unknown to me how parts of them work.
I tested on Illidan Evil, and there are the following issues:
1) The footprints in demon mode don't actually match the location of the feet, the nodes are literally in the same position (is this how it looks in the game?).
2) The blood spurts in the death animation face the opposite direction, however no information about this is given by the model (hard coded??).
3) Footsteps aren't spawned in the water walk variation (as the model dictates), yet they are spawned in the game (??).

As you said it yourself, some things are harder to understand without proper support. It needs some researching.
 
Level 48
Joined
Apr 18, 2008
Messages
8,421
Added support for spawn event objects (SPN), though it is unknown to me how parts of them work.
I tested on Illidan Evil, and there are the following issues:
1) The footprints in demon mode don't actually match the location of the feet, the nodes are literally in the same position (is this how it looks in the game?).
2) The blood spurts in the death animation face the opposite direction, however no information about this is given by the model (hard coded??).
3) Footsteps aren't spawned in the water walk variation (as the model dictates), yet they are spawned in the game (??).

1) The footprints spawn at the location of the node, generally speaking, but they are also affected by any parent nodes (e.g, bones).
2) The blood spurts face the direction of the node (given to it by Rotation), yet they, too, are affected by parents.
3) No idea. Maybe they're just too transparent. Which model has 'water walk' footprints?
 
Level 29
Joined
Jul 29, 2007
Messages
5,174
Fixed some parts of particle emitters type 2, and added support for the model-space parameter.

Fixed node billboarding (though I didn't bother with X/Y/Z variants).

I can quite easily add splat/ubersplat support (they work pretty much the same way as particles type 2, so to speak), however I don't really see the point, seeing as they are pretty much meaningless out of the game. Thoughts?

1) The footprints spawn at the location of the node, generally speaking, but they are also affected by any parent nodes (e.g, bones).
2) The blood spurts face the direction of the node (given to it by Rotation), yet they, too, are affected by parents.
3) No idea. Maybe they're just too transparent. Which model has 'water walk' footprints?

Thanks, life saving advice...

1) That's their location.
2) The node has no rotation.
3) No, and I literally started that list with "I tested on Illidan Evil, and there are the following issues".
 
Last edited:
Level 29
Joined
Jul 29, 2007
Messages
5,174
Updated the color picking to use a 256x256 framebuffer. This means the rendering wont flicker when picking (though it was probably too fast to be seen anyway), and it will be much faster (unless the viewer's size is smaller than 256x256 to begin with, which is unlikely).
The drawback is that it's a bit less accurate (since it's scaled down), although that probably wont be noticeable.
 
Level 29
Joined
Jul 29, 2007
Messages
5,174
Fixed another big issue with particle emitters (and splats *hint hint*), although I didn't update the code on the site yet.
I am not sure how to incorporate splats - make a SLK reader and somehow asynchronously load the original SLKs while loading models, or hardcode all of the data in the SLKs.

Also...who's up to making Web Warcraft? (yes that's a joke)

I've noticed that it has begun stuttering recently; might just be my browser but thought I should mention it.

Nothing here.
 
Last edited:
Fixed another big issue with particle emitters (and splats *hint hint*), although I didn't update the code on the site yet.
I am not sure how to incorporate splats - make a SLK reader and somehow asynchronously load the original SLKs while loading models, or hardcode all of the data in the SLKs.

Also...who's up to making Web Warcraft? (yes that's a joke)



Nothing here.

Hmm, Online Warcraft? Seems interesting. It could happen, like some interactive world of Hive, where people could walk around and chat or sandbox.
 
Hmm, Online Warcraft? Seems interesting. It could happen, like some interactive world of Hive, where people could walk around and chat or sandbox.

Does that mean I can Create my Own Avatar and hAVING fUN WALKING aROUND? yeah!!!!!

(Sorry for the Caps lock thing, Lazy to reedit it)


We Need A Hive Building xd
(This Sounds like a RPG Game already pfft)
 
Level 29
Joined
Jul 29, 2007
Messages
5,174
Updated the viewer with the new fixes, and all splats.

I didn't do a general SLK parser, because that would be a pain (not really the SLK part, but rather the asynchronous nature of loading files in the browser).

I am planning to stop working on the viewer for now. Anything beyond this would be pretty much making Warcraft (which funnily enough is kind of feasible).

Things still blatantly missing from the MDX handler are ubersplat and sound event objects.
Both aren't hard to implement, but will probably not be.

I changed a lot of the code that handles the 3D math of objects (transformations, world locations, rotations, etc.).
So far I didn't notice any bugs, but if you see something weird, you know what to do.

Just as a small plaything, I added the version with walking in /walk, e.g.:
viewer.hiveworkshop.com/?q=units/nightelf/evilillidan/illidanevil.mdx -> viewer.hiveworkshop.com/walk/?q=units/nightelf/evilillidan/illidanevil.mdx
Right click to walk, shift + left click to attack, and delete to die.
 
Top