An impossible thing we might have seen one day
Whenever I uncomment
// ExtensionOverride = ("GLExtOverride/GLExtOverride.dll")
// {
// RemoveExtensions = (GL_ARB_vertex_program, GL_ARB_fragment_program);
// }
My client keeps crashing on launch?
For anyone having capture issues, try this: capture using the Test client. Not the Live client, not the Beta client, but specifically the test client. For some reason, it seems to work on test, but for me not on live as well. I'm trying to figure out why, but let me know if doing this explicitly on the test server helps.
[Guide to Defense] [Scrapper Secondaries Comparison] [Archetype Popularity Analysis]
In one little corner of the universe, there's nothing more irritating than a misfile...
(Please support the best webcomic about a cosmic universal realignment by impaired angelic interference resulting in identity crisis angst. Or I release the pigmy water thieves.)
Did you ever find a way to port over the textures/shaders with the .obj file? I've been poking through the Shaders/Images files and finding the matching pairs, so to speak, but I've yet to decipher if there is a way to import that data into Blender effectively with the models.
[Guide to Defense] [Scrapper Secondaries Comparison] [Archetype Popularity Analysis]
In one little corner of the universe, there's nothing more irritating than a misfile...
(Please support the best webcomic about a cosmic universal realignment by impaired angelic interference resulting in identity crisis angst. Or I release the pigmy water thieves.)
It may be possible. I was searching within the config files and is possible to export the textures with the UV coordinates but it is default set to false since there are concerns it may be buggy. Using the Shade Editor helps understand which Image/Shader file corresponds to each object file/object group.
I'm still scouring the internet to see what options there are for importing the Shader/Image information into Blender with the *.obj file or into the Material Tree.
Blender Notes & OpenGL Shading - I will read into this further, wanted to the share the link now.
edit: Yikes, that's on creating "toonish" renderings.
edit:: It seems it may be possible in the Shader Editor to save the Shader information in GLSL format and other formats.
edit::: Why am I so curious about porting over textures and such? 3D printers also print in color and with the textures
Well, I got my obj file! I will post results when I am done cleaning it up. Thanks for this amazing idea, Arcanaville!
@Rien
I am Lord Omi. Now and forever. They can take our City, but they can't take me.
I have a potential fix for the problems of characters being fragmented and then squished onto the origin. If you're having trouble with capturing .OBJ files, try this:
1. Add this command line switch to City of Heroes: -useTexEnvCombine
You can add that within the NC Launcher under Properties for the game, at the bottom, in the "Extra Command Line Parameters (Advanced) box. If you are running demorecords, you can add that to the command line for however you do that. For now, I've been skipping demolaunchers and just using a shortcut, but any way to inject that command line switch should work.
2. At the bottom of gliConfig.ini, uncomment out these lines:
// ExtensionOverride = ("GLExtOverride/GLExtOverride.dll")
// {
// RemoveExtensions = (GL_ARB_vertex_program, GL_ARB_fragment_program);
// }
But change the RemoveExtensions line to read this:
RemoveExtensions = (GL_ARB_vertex_program, GL_ARB_fragment_program, GL_ARB_vertex_buffer_object)
Bottom line it should look like this:
ExtensionOverride = ("GLExtOverride/GLExtOverride.dll")
{
RemoveExtensions = (GL_ARB_vertex_program, GL_ARB_fragment_program, GL_ARB_vertex_buffer_object)
}
Apparently if you try to disable those extensions without the -useTexEnvCombine flag the client doesn't autodetect they are gone and tries to use them anyway, causing a crash. If you add that flag, the client shouldn't use them either way, but I disabled them in the config anyway just to be on the safe side.
The net result is the game client doesn't attempt to use vertex programs anymore, which are OpenGL programs that can adjust the shape and location of meshes on the fly. Without them, everything ends up captured in their default positions, which is why everything is scrunched up and in pieces. In effect, this switch reverts the client to the pre-Ultra mode days of being stuck at OpenGL 1.1. But interestingly, even when Ultra mode is disabled in settings, the client still uses higher 2.x constructs, just with less enhanced detail.
Anyway, try that everyone, and please report on your progress and whether it works or not.
Also, I'm still working on some documentation for what to do with these OBJ files, but a cautionary for those not knowledgeable about what's going on. You can capture something that you think is wrong, but is actually right, if you don't understand how the game works. For example:
This just looks like another failure. A cape, floating in a blob of triangles. But:
Notice the model is actually perfectly intact and assembled. Its just surrounded by a cloud of geometry that is being used by the FX engine to paint the auras and power effects surrounding the model. Just delete those, and the model will be there inside.
Just because you don't see it in-game, doesn't mean its not there. There are all sorts of invisible geometry floating around that is used to "paint" power effects in the air. Be careful that you didn't get a good capture, but it just didn't look like it.
And FYI, that capture is from in-game, from the Live client, thirty minutes ago, using the recommendations I posted above.
A couple of other caveats:
1. Capture in small enclosed spaces when you can to reduce the size of the OBJ export. I notice many 32-bit 3D apps choke on outdoor busy exports. 64-bit Blender seems to do much better.
2. Turn off auras and powers when capturing unless that's really what you want and are looking to experiment with texture mapping. It'll just make the capture busier and add work.
3. Captures work from demorecords, and demorecords can run standalone without the servers. So if nothing else, demorecord what you want to keep. Later, you might be able to 3d capture from those demorecords and export to other programs or a 3D printer even if the servers are gone.
[Guide to Defense] [Scrapper Secondaries Comparison] [Archetype Popularity Analysis]
In one little corner of the universe, there's nothing more irritating than a misfile...
(Please support the best webcomic about a cosmic universal realignment by impaired angelic interference resulting in identity crisis angst. Or I release the pigmy water thieves.)
I just wanted to say I am in awe of the knowledge evident in this thread. I have a few characters I would love to have as custom 3D models. If only this work could progress enough to be viable in time for us normal folks to get the models extracted in hopes of finding someone to print them.
RagManX
"if the market were religion Fulmens would be Moses and you'd be L. Ron Hubbard. " --Nethergoat to eryq2
The economy is not broken. The players are
I just wanted to say I am in awe of the knowledge evident in this thread. I have a few characters I would love to have as custom 3D models. If only this work could progress enough to be viable in time for us normal folks to get the models extracted in hopes of finding someone to print them.
RagManX |
And I'm not one to be paranoid, but I disabled client updates in NCLauncher and backed up my test, beta, and live clients. I'm not pushing anything into the clients until I know what it is first, and with backups of the clients I will always have the ability to run a demorecord. Which means I will always have the ability to make videos of anything in a demorecord. And it means I will be able to print anything captured in a demorecord, if the technology becomes available to do so.
DEMORECORD, DEMORECORD, DEMORECORD. Its one of the best ways we have to retain some memories of the game if and when it ends, and it was always one of our fairly unique features.
[Guide to Defense] [Scrapper Secondaries Comparison] [Archetype Popularity Analysis]
In one little corner of the universe, there's nothing more irritating than a misfile...
(Please support the best webcomic about a cosmic universal realignment by impaired angelic interference resulting in identity crisis angst. Or I release the pigmy water thieves.)
I highly suggest doing a demorecord in a new or empty base, using CoHDemoLauncher to launch the demo without the maps so that you'll essentially just have your character captured.
DEMORECORD, DEMORECORD, DEMORECORD. Its one of the best ways we have to retain some memories of the game if and when it ends, and it was always one of our fairly unique features.
|
Gah. So going to miss this. Muttergrumblecurse.
I wonder how hard it would be to reverse-engineer the server protocols enough to "log in" a character and just fly around a zone?
Synchrotron, level 50 Radiation/Radiation Defender
Fighting crime on Champion since 2004
I believe why the models are textureless when opened in Blender is that the texture/material data is not being stored in the *.obj file. Normally at the end of the file is the information that specifies where the textures are located and essentially where they go.
I believe why the models are textureless when opened in Blender is that the texture/material data is not being stored in the *.obj file. Normally at the end of the file is the information that specifies where the textures are located and essentially where they go.
|
[Guide to Defense] [Scrapper Secondaries Comparison] [Archetype Popularity Analysis]
In one little corner of the universe, there's nothing more irritating than a misfile...
(Please support the best webcomic about a cosmic universal realignment by impaired angelic interference resulting in identity crisis angst. Or I release the pigmy water thieves.)
I cobbled this together for Samuraiko, who wanted to be able to do camera spins around something, and I went overboard
Since demos are soon going to be the only way we can enjoy the visuals of CoH, I thought I'd share it more broadly.
It's a command-line windows tool to generate POS and PYR commands for entities in demo files.
Here's an example input:
// CamSweep input file
// camera path:
BEZIER
-264.603943 224.019974 -349.036316
-8.034166 73.710609 -90.253113
165.077911 30.567497 -148.872574
165.260742 40.529469 -246.240875
END
// target path: (x z y, 32 entries maximum)
POINT
128 18.5 -215.5
END
// entity name
CAM
// Time interval (use zero for always output time as zero)
33
// number of intervals to output
450
It will generate a Bezier curve path using the four control points specified, and move the camera along it pointing at the point specified as it moves along. It will generate 450 entries, 33 ms apart.
You can specify a path for the camera, the thing-the-camera-looks-at, or both. You can use points, linear interpolations, Catmul-Rom splines, Bezier Curves, Orbits, Spirals, Follows, etc. It's all in the readme.
No warranty expressed or implied. Don't specify an output file that you don't want to overwrite
Here's the dropbox link:
https://www.dropbox.com/s/viu5dpi9si...mSweepV0.5.zip
You may well need the debug C runtime (MSVCR100d.dll) from microsoft. Apologies for the rough state, but I hadn't really intended it for general release.
Synchrotron, level 50 Radiation/Radiation Defender
Fighting crime on Champion since 2004
I'm certain that's the reason: what I haven't investigated is how to put them there correctly.
|
http://en.wikipedia.org/wiki/Wavefront_.obj_file
Synchrotron, level 50 Radiation/Radiation Defender
Fighting crime on Champion since 2004
I cobbled this together for Samuraiko, who wanted to be able to do camera spins around something, and I went overboard
|
Somewhere, and I really don't know where, I have a python script that does something similar: it will generate camera paths for circular, hyperbolic, and bezier curves based on control points. It might be faster to rewrite it than look for it at this point honestly.
The Titan hackers might be able to do one better one day. They know enough, I believe, in theory to be able to adjust the memory that the demorecords are stored in on the fly, and with that be able to alter the camera positions on the fly.
Editing camera positions on the fly for a demorecord that's being played is, in effect, a free form navigation system without the need for a server. That's currently beyond my knowledge base and time availability, but it might be within theirs.
But they are currently quite busy with another more critical project at the moment.
[Guide to Defense] [Scrapper Secondaries Comparison] [Archetype Popularity Analysis]
In one little corner of the universe, there's nothing more irritating than a misfile...
(Please support the best webcomic about a cosmic universal realignment by impaired angelic interference resulting in identity crisis angst. Or I release the pigmy water thieves.)
I'm certain that's the reason: what I haven't investigated is how to put them there correctly.
|
g 2
v 3.443207e+001 4.647461e+000 -6.005475e+001
v 1.277694e+001 6.548915e+000 -6.633485e+001
v 2.688533e+001 8.735832e+000 -7.355779e+001
f 7 8 9
v 1.277694e+001 6.548915e+000 -6.633485e+001
v 3.443207e+001 4.647461e+000 -6.005475e+001
v 2.032368e+001 2.460544e+000 -5.283182e+001
f 10 11 12
G 2 stands for "Group 2" and in the Image and Shaders directories/files there is a corresponding image name - somewhere along the lines of Image_2D_0231_002 or so, which says that the image/texture file covers that group of faces. The image file itself should have the UV coordinates embedded in its data.
I am also looking at GLxtractor which appears to do the same thing, but as I understand it would keep the relevant texture/shader information stored in the *.obj file - but it 1/2 worked.
www.SaveCOH.com: Calls to Action and Events Calendar
This is what 3700 heroes in a single zone looks like.
Thanks to @EnsonsDeath for the GVE code that made me VIP again!
Depends on which Issue you want. Issue 2? Possibly next week, at the current rate of developments. Issue 8? Maybe next year; there's even a leaked developer key from Issue 8 that would allow you to use the game's built-in map editor. Issue 24? Maybe in a couple of years, if the community sticks together and doesn't give up while the server emulator slowly re-implements everything.
|
[Guide to Defense] [Scrapper Secondaries Comparison] [Archetype Popularity Analysis]
In one little corner of the universe, there's nothing more irritating than a misfile...
(Please support the best webcomic about a cosmic universal realignment by impaired angelic interference resulting in identity crisis angst. Or I release the pigmy water thieves.)
If I can't get the textures, no great loss.
Also, for base edtors; this is a great way to back up your bases (although many sprites will just appears flat planes.)
Works like a champ Arcana.
By the way people, it works great in the costume editor, which means you can go into AE, edit an enemy faction, and use it to rip models of whatever it has available.
Those are unmodified imports out of the game, I didn't un bury them or anything. You have a huge GUI up on the corner and the character meshes down there on its lonesome.
If I can't get the textures, no great loss.
Also, for base edtors; this is a great way to back up your bases (although many sprites will just appears flat planes.) |
Also, I haven't gotten a chance to try again, but I'll try what Arcana said about the vertex thing and see if I can make it work. I think the best place to grab the model will be from the character select screen though, unless a specific pose is desired.
@Johnstone & @Johnstone 2
ediblePoly.com
All my characters
www.SaveCOH.com: Calls to Action and Events Calendar
This is what 3700 heroes in a single zone looks like.
Thanks to @EnsonsDeath for the GVE code that made me VIP again!
[Guide to Defense] [Scrapper Secondaries Comparison] [Archetype Popularity Analysis]
In one little corner of the universe, there's nothing more irritating than a misfile...
(Please support the best webcomic about a cosmic universal realignment by impaired angelic interference resulting in identity crisis angst. Or I release the pigmy water thieves.)