Let me set the Camera matrix directly

I want an orthographic camera for parts of my game.

Looking at the wiki it is not clear to me if this is possible?

I also want to be able to set the camera’s frustrum so that I can control in object space the boundaries of my scene programmatically. If I could set the matrix I know how to do this. With the current API I do not know how to do this if it is possible.

I also want to be able to control the near and far clip plane. I know more about the depth of my scenes than ROBLOX does.

10 Likes

Using orthographic/isometric cameras would be really fun for some games. You can probably set the camera matrix manually (using Scriptable type and using the CFrame.new constructor which accepts the rotation matrix) but I think it will be harder than ROBLOX just allowing us to do this stuff built in.

What I would like is if the Camera class was marked abstract, and if it were subclassed into different camera ‘types’ (e.g. isometric, orthographic and perspective) which we could use based on what sort of view we want our players to see. Of course, this would probably require a lot of work (because IIRC only one Camera instance is allowed at a time) but I see it paying off a lot in the quality of games and the variety.

Is there an option to change the camera’s vocal length?

Haven’t tried making an orthographic camera yet, but there are two ways I know of that can make near-isometric cameras:

This is a bit tricky, because you will have to zoom out the camera quite far to get a decent part of the map on the screen (I’m talking hundreds or thousands of studs away), and this results in Z-fighting because of non-uniform depth buffer. Either that or you have to scale the map down significantly which isn’t practical.

5 Likes

Imagine a city building game :open_mouth:

1 Like

SimCity? But maybe BloxCity? IDK.

I’m afraid that name got taken by someone :wink: