Hard Light Productions Forums
Modding, Mission Design, and Coding => FS2 Open Coding - The Source Code Project (SCP) => Topic started by: Woolie Wool on February 02, 2005, 12:09:23 pm
-
I always thought that the CBanims looked ugly when they didn't fill the CBAnim box in hi-res mode. Could anyone code in a feature to scale up the CBAnims to the size they are in 640x480?
-
You'd get horrible pixelated anis instead. I don't know if that'd be an improvement.
-
I've asked the SCP team to do this several times. Every time they've responded the same way Lynx did.
Open up aniviewer. Pick an CBani. Click options. Click Zoom 2x.
Does that look horrible to you. Remember, it's still roughly 1.5 times bigger than what it would look ingame. Do 640x360 movies look horrible when sized to fullscreen? (okay, I admit there's a bit of difference here, because of the smoothing the codecs use, but still)
Thank you.
-
It depends if you apply some post processing or not.
-
Find a way to anti-alias the movies when scaled and we're great
-
If they were scaled we would filter them to retain as much quality as possible. This is already done for other textures when you get close (remember the bad nebula poof pixelation before I fixed it?). The only problem is performance since it takes more resources (processing time and memory) to render it this way. I seriously doubt that a computer capable of running FSO decently will have any trouble but it needs to be tested to know for sure. Also remember that scaling would go into affect with the non-standard resolutions as well so you'll have a much greater quality problem at 1600x1200 than just scaling to 1024x768.
I'm going to experiment with this (for unrelated things) in the near future anyway so if someone else doesn't get there first then I'll test it out. The OGL code has already been modified to reuse texture resources for ANIs so we have a bit more room to play there at least.
-
Originally posted by taylor
If they were scaled we would filter them to retain as much quality as possible. This is already done for other textures when you get close (remember the bad nebula poof pixelation before I fixed it?). The only problem is performance since it takes more resources (processing time and memory) to render it this way. I seriously doubt that a computer capable of running FSO decently will have any trouble but it needs to be tested to know for sure. Also remember that scaling would go into affect with the non-standard resolutions as well so you'll have a much greater quality problem at 1600x1200 than just scaling to 1024x768.
I'm going to experiment with this (for unrelated things) in the near future anyway so if someone else doesn't get there first then I'll test it out. The OGL code has already been modified to reuse texture resources for ANIs so we have a bit more room to play there at least.
Why would you have performance problems in the briefing menu? It's not like the game has to render anything.
-
Originally posted by Woolie Wool
Why would you have performance problems in the briefing menu? It's not like the game has to render anything.
You've got to render every frame of the anim without making it slow. You've got all of the audio going on (voices, music, sfx), text rendering, mouse cursor and button highlights. It's not a lot but it will depend on how effcient your video card is at scaling in OGL or D3D. Scaling a normal video in something like MediaPlayer isn't the same since you have different optimizations going into effect in that case.
Most cards should handle it without flinching though so it's only a passing thought in my mind at this point. Some may have trouble (past experience) so it will have to be tested just to make sure. I haven't really looked at the code yet but the only real issue with doing this is figuring out how much to scale by. The interface screen on has an x,y position for the top-left pixel of the ani. It would have to be specified as a box instead so the full target dimensions are passed to anim_play_init() and the scale factor can be determined. It would be a lot easier if the existing gr_screen_resize_pos() could be used but I haven't looked at it close enough to say.
-
I think he's advocating the briefings be pre-scaled in seperate high-res versions, not that it be done by the program.
-
No, I said that the game should scale up the anims to the proper size and render them in the proper position.
-
Why not just give the option of using larger ANIs for mods? like a 2_cbanim name, or even a 3_cbanim name...
-
Can we not use AVIs for cbanis yet? Or is it too hard to integrate with the UI? (as the movieplayer is full screen)
-
You could probably do a better job extracting all the anims using AniView, using Irfanview's batch processing capability to resample them all to a higher resolution, and then saving them as ANIs again.
Of course, the 256 color limit probably won't help, so it might work better to save 'em as DDS/EFF instead.
-
But Taylor said that we can't do EFFs for CBs... yet.
-
Originally posted by WMCoolmon
You could probably do a better job extracting all the anims using AniView, using Irfanview's batch processing capability to resample them all to a higher resolution, and then saving them as ANIs again.
Of course, the 256 color limit probably won't help, so it might work better to save 'em as DDS/EFF instead.
Where do I get this Irfanview? And can it save all the files at the same time? PhotoImpact has a batch manager, but I have to save the files one by one once I'm done.
-
Originally posted by Raa
Why not just give the option of using larger ANIs for mods? like a 2_cbanim name, or even a 3_cbanim name...
The code is already there to do this actually. It checks for a hi-res name, though it's the exact same name. Not sure if that is new code or not but if finished then it could be made to work quite nicely I would think.
Originally posted by aldo_14
Can we not use AVIs for cbanis yet? Or is it too hard to integrate with the UI? (as the movieplayer is full screen)
I've already said that I'm not going to code in AVI support. That doesn't mean that someone else can't do it but it's really hard to get working properly on all platforms. Since I'm the one maintaining the Linux and OSX versions I've got a firm "NO" vote on AVI support. All of the Linux/OSX code should be merged in CVS this weekend so I can move on to other things after that. It's enough of a pain to install TBP3.1 on Linux that having another Windows only feature puts a rather nasty look on my face. :)
A near term project is to make a MJPEG decoder for the game to replace ANIs. This would save disk space since it will be compressed and if I can get the new built in JPEG decoder working with this then we also get the advantage of automatic scaling on decode. In-memory size isn't important since we only ever load one frame at the time. The MJPEG implimentation would be video only so you could still use OGG or something for the audio. This would almost end up being a drop in replacement and require no code changes except to animplay and the new jpgutils.
-
Originally posted by Woolie Wool
Where do I get this Irfanview? And can it save all the files at the same time? PhotoImpact has a batch manager, but I have to save the files one by one once I'm done.
http://www.irfanview.com
And I don't know if EFF/DDS support is in, but if ANIs really do use textures, I don't think it should be all that hard to support 'em - the bmpman system handles both interface images and textures.