Inside: SereneScreen Fan Forum

Inside: SereneScreen Fan Forum (https://www.feldoncentral.com/forums/index.php)
-   Marine Aquarium 3 for Windows (https://www.feldoncentral.com/forums/forumdisplay.php?f=46)
-   -   New Fish Models (https://www.feldoncentral.com/forums/showthread.php?t=4918)

rctneil 05-29-2009 01:02 PM

New Fish Models
 
Hey Jim,
As you work on the new fish models, would we been able to see pictures of the models being created before they are put into the aquarium to show progress more clearly and give us more of an insight to how the aquarium is made?

Thanks

Regards,
Neil

Jim Sachs 05-29-2009 01:24 PM

If I have time, and can figure out how to show how it's done without showing how it's done.

Ralph 05-30-2009 08:45 AM

That part sounds easy to me.... change all the colors to white and put them on a white background. :D

The Old Man 06-01-2009 04:58 AM

I was just watching the existing fish models when my screensaver kicked in, they still look really good, its hard to imagine how much more improved the new ones will look! I know you added some pixel shader goodness to one or two of them a while back but even so, they still look great. Better shut up, I might have put Jim off making the new ones!

Jim Sachs 06-01-2009 09:19 AM

No pixel shaders, but vertex shaders are used for many things in the Aquarium now. There are still a lot of cards out there that don't support pixel shaders.

feldon34 06-01-2009 10:15 AM

These graphics chipsets support pixel shaders:
  • GeForce 3
  • GeForce 4
  • Radeon 8500+
  • Radeon 9500+
  • Matrox Parhelia
  • S3 Chrome
  • Intel GMA 900/950+
That's pretty much every graphics card since 2002.

Jim Sachs 06-01-2009 10:40 AM

I'm always getting complaints that MA3 won't run on some old machine or another. If I used Pixel Shaders, that would increase a thousandfold. Just today, Marianne was mentioning that many of the effects in The Lost Watch did not show up on one of her new machines. That's obviously Pixel Shader trouble.

Derrek 06-01-2009 12:03 PM

Her "new machine" is a Dell mini. It's amazing it ran at all.

Jim Sachs 06-01-2009 12:04 PM

But it should run MA3.

Tiny Turtle 06-01-2009 06:59 PM

When you buy a netbook or similar computer you shouldn't really expect to be able to run every single program. At some point you have to stop and consider why there were other computers at the store costing five times as much.

You're building a driveway to your house and making it large enough for an eighteen-wheeler to park sideways - just in case one should happen to drop by.

Nicki 06-02-2009 12:58 PM

Corporations can often be the biggest slouches in terms of updating their systems . The company my brother works for has literally thousands of computers all running , you guessed it , Windows 98 . Most of the machines are the same ones that were there when he started the job in the 90's but I guess we should give them kudos for making the leap from MSDOS ! If it ain't broke , I guess . These guys would have to be content with MA 2.6 , but following the logic it is easy to see why it's necessary not to alienate too many customers with older computers .

jleslie 06-02-2009 03:53 PM

BTW a Dell mini should be the last graphics chipset Feldon mentioned... so Pixel shaders... (I'm too tired to look it up, but Atom usually mean the single-memory-channel 945 chipset, almost always in netbooks, which is last on his list.)
John

Araquay 06-22-2009 10:16 AM

As you develop the new fish models, would it be feasible to create more than one species from the same model? For example, the percula clownfish shares the same body conformation as a few other clownfish. So it would seem like you could provide two or three species with the same model using the appropriate textures.

Alan

Jim Sachs 06-22-2009 11:37 AM

That was my original plan with each fish-type (tangs, triggerfish, etc.), but it turned out that each species had enough differences in the body shape to warrant its own model.

What I'm struggling with right now is creating a whole new paradigm for the fish models. Up to now, the fish have consisted of 6 parts: the body, 2 side fins, 2 low fins, and the eye (a single sphere). This worked well when monitors were 1024x768, but modern resolutions show the areas where these separate pieces join together. My plan has always been to make them single objects, like a real fish. Just the vertices would be rotated to move fins and eyes, not individual objects.

The problem is what gets drawn in what order. When transparency is involved, you have to draw in layers. For instance, a transparent fin must be blended with previously-drawn pixels of the body. When the fin is a separate object, I can keep track of the angle of the fish and draw the objects in the proper order. But I have yet to find a way of doing this if the fish is all one object.

feldon34 06-22-2009 01:02 PM

You can't make the fins solid and then use a shader?

rctneil 06-22-2009 01:14 PM

Quote:

Originally Posted by Jim Sachs (Post 114314)
That was my original plan with each fish-type (tangs, triggerfish, etc.), but it turned out that each species had enough differences in the body shape to warrant its own model.

What I'm struggling with right now is creating a whole new paradigm for the fish models. Up to now, the fish have consisted of 6 parts: the body, 2 side fins, 2 low fins, and the eye (a single sphere). This worked well when monitors were 1024x768, but modern resolutions show the areas where these separate pieces join together. My plan has always been to make them single objects, like a real fish. Just the vertices would be rotated to move fins and eyes, not individual objects.

The problem is what gets drawn in what order. When transparency is involved, you have to draw in layers. For instance, a transparent fin must be blended with previously-drawn pixels of the body. When the fin is a separate object, I can keep track of the angle of the fish and draw the objects in the proper order. But I have yet to find a way of doing this if the fish is all one object.


By the sounds of the above, it seems like we'll have a whole tank ful of newly modelled fish by the end of the week!



:D

Jim Sachs 06-22-2009 01:26 PM

The transparency is already done in shaders. But the shader needs something to work with - a pixel that's already there. Then it blends the new pixel with it using the calculated amount of transparency. So the scene has to be built from back to front. The polygons in an object are simply drawn in the order they are listed in the model, regardless of how far away from the camera they are, so it's entirely possible for a side fin to be blended with the background, then the body to be painted behind it, giving the impression that the fish has a hole in it where the fin passes over.

feldon34 06-22-2009 02:54 PM

I really never realized this was an issue with the model at all.

I thought the texture just had an alpha channel with transparency. I realize you usually just use 1-bit alpha in your DDS textures to save space, but what if you did 4-bit alpha for the fins?

Jim Sachs 06-22-2009 03:09 PM

I've always used 4-bits (16 levels) of Alpha for the fish textures (DXT3).

The problem I'm describing has not been much of an issue before, because I've always used a heirarchy of objects within the fish (fins, eyes, etc.), and manually changed the order in which they are painted depending on viewing angle. But now that I'm trying to go to a single object, the drawing order is no longer reasonably within my control. I say "reasonably" because there is a way of doing it, but it would involve calculating the distance from the camera of every polygon, for every object, every frame. Even this would only give an approximation, as a polygon which runs deeply into the scene could easily have points which are both nearer AND farther than the next polygon.

feldon34 06-22-2009 04:13 PM

I just don't see software developers out there having to jump through hoops to do, for instance, the windows on a car, etc. There must be some routine that does all this.


All times are GMT -6. The time now is 06:22 AM.

Powered by vBulletin®
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.