Search found 33 matches

by kulor
Tue Aug 09, 2022 8:48 am
Forum: SNESdev
Topic: Kulor's Guide to Mode 7 Perspective Planes
Replies: 78
Views: 11048

Re: Kulor's Guide to Mode 7 Perspective Planes

I still need to update the guide, but here's probably the final-final version of the script: var baseXOffset = 128; var baseYOffset = 112; var lerp = function(v0, v1, t) { return v0 + t * (v1 - v0); }; var rad = function(d) { return d * Math.PI / 180; }; var dist = function(cam, a) { return cam.y / ...
by kulor
Sat Aug 06, 2022 11:10 pm
Forum: SNESdev
Topic: Kulor's Guide to Mode 7 Perspective Planes
Replies: 78
Views: 11048

Re: Kulor's Guide to Mode 7 Perspective Planes

I figured out the mystery curve problem. The issue is, I'm not sure why it works... Basically, the mystery curve was a measurement of error between what my recentering was actually doing, and what my recentering needed to be doing; it wasn't an additional offset at all. The actual ideal recentering ...
by kulor
Thu Aug 04, 2022 6:25 pm
Forum: SNESdev
Topic: Kulor's Guide to Mode 7 Perspective Planes
Replies: 78
Views: 11048

Re: Kulor's Guide to Mode 7 Perspective Planes

Your topdist/btmdist do seem to be dependent on these three things: cam.FOV, cam.pitch, cam.y So, changing any of those 3 should necessitate a new table, I think? (This is definitely the set of things I would expect to affect the divide.) Yeah, changes to any of those would require generating a new...
by kulor
Thu Aug 04, 2022 8:13 am
Forum: SNESdev
Topic: Kulor's Guide to Mode 7 Perspective Planes
Replies: 78
Views: 11048

Re: Kulor's Guide to Mode 7 Perspective Planes

I'm pretty certain that pitch cannot change without adjusting the table. I don't really understand how it could be otherwise... but I'd like to be able to follow the why (or why not, if I'm wrong) through the code. Unfortunately, at this point I could't figure out which code you're referring to. Th...
by kulor
Wed Aug 03, 2022 10:21 pm
Forum: SNESdev
Topic: Kulor's Guide to Mode 7 Perspective Planes
Replies: 78
Views: 11048

Re: Kulor's Guide to Mode 7 Perspective Planes

So, we're rasterizing a tited quad. You have a horizontal scale and vertical position at the far/horizon/top scanline, and a different horizontal scale and vertical position at the bottom scanline. You interpolate between them from top to bottom, but the vertical spacing of that interpolation needs...
by kulor
Wed Aug 03, 2022 8:55 am
Forum: SNESdev
Topic: Kulor's Guide to Mode 7 Perspective Planes
Replies: 78
Views: 11048

Re: Kulor's Guide to Mode 7 Perspective Planes

That's called a "dolly zoom", if you or anyone else were interested. :D Yeah that's totally it! I was scouring OOT cutscenes trying to find a really obvious example of it, and this was the first one I found . I'm pretty sure they're subtly tweening FOV all over the place in pretty much ev...
by kulor
Wed Aug 03, 2022 7:41 am
Forum: SNESdev
Topic: Two simultaneous mode 7 textures?
Replies: 39
Views: 2811

Re: Two simultaenous mode 7 textures?

*Certainly, there's more than enough tiles and colours in the tilemap for any artist to draw the background with those two things on it. I think it's like a 128x128 tilemap for Mode 7 backgrounds, right, so half or less than half for each part--and it really can be as small as needed as far as I'm ...
by kulor
Wed Aug 03, 2022 7:23 am
Forum: SNESdev
Topic: Kulor's Guide to Mode 7 Perspective Planes
Replies: 78
Views: 11048

Re: Kulor's Guide to Mode 7 Perspective Planes

All 4 of the SNES games I mentioned can dynamically change the tilt. I don't think it's unreasonable to ask of the SNES... but if you allow a dynamic perspective, I don't think there's a practical way to use a table to bypass the divide. Tilt would be pitch, not FOV. Dynamic FOV would be something ...
by kulor
Tue Aug 02, 2022 8:01 pm
Forum: SNESdev
Topic: Kulor's Guide to Mode 7 Perspective Planes
Replies: 78
Views: 11048

Re: Kulor's Guide to Mode 7 Perspective Planes

Thinking some more about how you might optimize this, and...I think there might only be 2 actual multiplications per-scanline needed in my implementation? var topdist = dist(topa); var btmdist = dist(btma); var sl = lerp(1/topdist, 1/btmdist, scanline / 223); var scale = (1/sl) * distanceToScale; [....
by kulor
Tue Aug 02, 2022 7:08 pm
Forum: SNESdev
Topic: Kulor's Guide to Mode 7 Perspective Planes
Replies: 78
Views: 11048

Re: Kulor's Guide to Mode 7 Perspective Planes

I got ninja'd again! i also still need HDMA for vofs. Ahh that's true, I didn't see that hiding at the bottom there. So that would be 3 HDMA channels to my 2, but at least the table for that wouldn't need to be maintained at all. Really I just like that there's no magical mystery curve. Still curiou...
by kulor
Tue Aug 02, 2022 3:03 pm
Forum: SNESdev
Topic: Kulor's Guide to Mode 7 Perspective Planes
Replies: 78
Views: 11048

Re: Kulor's Guide to Mode 7 Perspective Planes

I tried to do a perspective projection myself and I took another approach for comparison. I think this approach might be easier to understand for some people so I'd like to try and explain it here. Thanks for posting this, very nicely done! I made some minor adjustments to account for a horizon, ma...
by kulor
Mon Aug 01, 2022 3:12 pm
Forum: SNESdev
Topic: Kulor's Guide to Mode 7 Perspective Planes
Replies: 78
Views: 11048

Re: Kulor's Guide to Mode 7 Perspective Planes

What you would want to do is calculate a sky plane as a separate plane, thought of as a camera above and a plane beneath, but with some pitch amount greater than 90, and a yaw of 180. You'd do everything the exact same way, then, at the point where the per-line scale values for that sky plane becom...
by kulor
Mon Aug 01, 2022 9:35 am
Forum: SNESdev
Topic: Kulor's Guide to Mode 7 Perspective Planes
Replies: 78
Views: 11048

Re: Kulor's Guide to Mode 7 Perspective Planes

Is there any particular reason Figure 5.3 and 5.5 has angles of 68 not 60? Oops! Both of those numbers are supposed to be "60", it's a 0 with a cross through it. My handwriting is just really bad, especially with a mouse. I'll touch that one up when I get a moment. Do you think that the (...
by kulor
Mon Aug 01, 2022 7:34 am
Forum: SNESdev
Topic: Kulor's Guide to Mode 7 Perspective Planes
Replies: 78
Views: 11048

Re: Kulor's Guide to Mode 7 Perspective Planes

I prefer talking about the "north" and 'east" sides of the map to "top" and "right" sides because those are unambiguous and always refer to the same geographic directions no matter where the camera is pointing. First, thanks for all the feedback! I agree with this...
by kulor
Mon Aug 01, 2022 7:10 am
Forum: phpBB Issues
Topic: Some images are broken in Chrome, but not Firefox
Replies: 7
Views: 2851

Re: Kulor's Guide to Mode 7 Perspective Planes

I've noticed that happens with all my posts on mobile. If you try reading it on a PC, the images should be there. I'm not sure why it does that, phpBB bug of some sort? Brizzo's identified the issue as being related to http vs https. We're using https here, and browsers shouldn't (and Chrome doesn'...