I thought it was BASIC! 2009/8/5 Thomas Harte <tomh.retros...@gmail.com>
> Oh, sorry, I think I missed the point of your question. My guess would > be that it uses matrices internally, as they're a popular mathematical > construct in a variety of fields but quaternions having been seriously > out of fashion for at least a century. I have a degree in Maths & > Computer Science but don't recall meeting them even once during my > studies — though a joint honours degree does necessarily end up > reducing your exposure to either subject individually. > > Also, my guess is that the sort of literature related to computer > graphics that is now extremely easy to access thanks to the web would > have been really quite hard to access during the 1980s. It's like a > hindsight thing. We're perched here at least two decades after > computer graphics started to break out of academia and into widescale > usage in consumer products, so we benefit from historical perspective > and the entire body of knowledge is now much more accessible. > > On Wed, Aug 5, 2009 at 1:23 PM, Thomas Harte<tomh.retros...@gmail.com> > wrote: > > You mean the Psion one? No idea, as I've never used it or explicitly > > disassembled anything z80 related. I've entered the z80 assembly fold > > from the direction of writing emulators. I'd guess that if it's not > > intended to be particularly realtime then quite possibly they're using > > the floating point formats supported natively by the Spectrum ROM? > > It'd save a lot of code and solve a lot of issues, and while being far > > too slow for realtime it'd probably be fast enough for a > > rendering-type application. > > > > Just guessing, of course. > > > > On Wed, Aug 5, 2009 at 1:18 PM, Roger Jowett<rogerjow...@gmail.com> > wrote: > >> what does vu3d use? > >> > >> On 05/08/2009, Thomas Harte <tomh.retros...@gmail.com> wrote: > >>> > >>> That's not entirely true. Matrices are numerically unstable, so the > >>> cost of ensuring they remain orthonormal when applying consecutive > >>> local transforms in a game such as Elite is substantially greater than > >>> the cost of ensuring that a quaternion remains of unit length. > >>> > >>> I make it 8 multiplies, 3 adds, 1 square root and 1 divide to fix up > >>> numerical error in a quaternion. Conversely, I get 36 multiplies, 21 > >>> adds, 3 square roots and 3 divides to fix up an orthonormal matrix. > >>> > >>> Quaternion to matrix is 10 multiplies, 6 shifts and 14 adds. So the > >>> way I calculate it, you can fix a quaternion and convert it into a > >>> matrix in less than you can fix up a matrix. Furthermore, quaternion > >>> composition is 16 multiplies and 12 adds, whereas matrix composition > >>> (with assumptions about the bottom row of a 4x4) is, ummm, at least 36 > >>> multiplies and 18 adds. And that's with the translation component not > >>> completely factored in (I'm reading actual code off screen and have > >>> optimised the translation out of this particular batch). > >>> > >>> Elite is also a perfect example of when Euler's aren't fine, even if > >>> they didn't produce Gimbal lock, as all rotation is around local axes. > >>> And besides that, Euler angles always have to be converted to some > >>> other form before they can be applied to arbitrary geometry. Matrices > >>> require no further transforms. > >>> > >>> On Wed, Aug 5, 2009 at 2:12 AM, Simon Cooke<si...@popcornfilms.com> > wrote: > >>> > You only really need quaternions if you're doing animation or > >>> > interpolation. > >>> > If you can live with the gimble lock, euler's fine. > >>> > > >>> > -----Original Message----- > >>> > From: owner-sam-us...@nvg.ntnu.no [mailto: > owner-sam-us...@nvg.ntnu.no] > >>> > On > >>> > Behalf Of Thomas Harte > >>> > Sent: Tuesday, August 04, 2009 10:05 AM > >>> > To: sam-users@nvg.ntnu.no > >>> > Subject: Re: Hi - just checking > >>> > > >>> > Am I replying to the correct thread? I don't know. But I've had the > >>> > opposite experience to a bunch of people here, having become > >>> > substantially more busy in my work than I was even just a few months > >>> > ago, squeezing the SAM temporarily out. > >>> > > >>> > A version of my vector 3d-stuff-as-a-library-for-others was all but > >>> > finished several months ago, I'll endeavour to get that out, though > it > >>> > still has the awkward limitation of doing rotations with Euler angles > >>> > only - which may be less efficient and is certainly more limiting > than > >>> > special orthogonals or quaternions. > >>> > > >>> > I'm still thinking about smart ways to optimise the reverse face > >>> > stuff. I need to get something hierarchical or otherwise > group-related > >>> > in there; checking every single face is obviously not the optimal way > >>> > to proceed. I guess what I'm looking for is some sort of bin-type > >>> > mapping to the surface of the unit sphere that allows all the points > >>> > on a particular hemisphere to be isolated from the majority of the > >>> > points on the opposite hemisphere. Or, you know, something at least a > >>> > lot like a sphere. Though I'm not sure any sort of lookup into > >>> > something a lot like a sphere would help much as it'd need to be > >>> > indexed by a three-tuple. > >>> > > >>> > I guess a good broad sweep would be to mark each face according to > the > >>> > visibility of the faces of a bounding box - if a face on the real > >>> > model points away from the face on the bounding box then it > definitely > >>> > can't be visible if the box face is. Or something like that. > >>> > > >>> > I'm going to stop thinking aloud now... > >>> > > >>> > On Tue, Aug 4, 2009 at 10:22 AM, Steve Parry-Thomas< > morriga...@aol.com> > >>> > wrote: > >>> >> I guess when the clocks go back in October SAM users will hibernate > >>> >> over > >>> > the > >>> >> winter until next August! > >>> >> > >>> >> > >>> >> > >>> >> > >>> >> > >>> >> > >>> >> > >>> >> From: owner-sam-us...@nvg.ntnu.no [mailto: > owner-sam-us...@nvg.ntnu.no] > >>> >> On > >>> >> Behalf Of Ian Spencer > >>> >> Sent: 04 August 2009 08:04 > >>> >> > >>> >> To: sam-users@nvg.ntnu.no > >>> >> Subject: Re: Hi - just checking > >>> >> > >>> >> > >>> >> > >>> >> Wow, I just sent the checking mail to see whether something was > wrong > >>> >> with > >>> >> my subscription to the group and it seems it was like poking a stick > >>> >> into > >>> > a > >>> >> hornets nest (in a positive sort of way) - over 40 mails in the last > >>> >> few > >>> >> days on the group. It's just great to see everyone is alive and > kicking > >>> > out > >>> >> there. > >>> >> > >>> >> > >>> >> > >>> >> Ian > >>> >> > >>> >> > >>> >> > >>> >> ----- Original Message ----- > >>> >> > >>> >> From: Ian Spencer > >>> >> > >>> >> To: sam-users@nvg.ntnu.no > >>> >> > >>> >> Sent: Friday, July 31, 2009 4:10 PM > >>> >> > >>> >> Subject: Hi - just checking > >>> >> > >>> >> > >>> >> > >>> >> Not heard anything on the group for quite a while so just thought I > >>> >> would > >>> >> send a 'test' to check it's not me that's got a problem and say hi > to > >>> >> everyone. > >>> >> > >>> >> I know you've all taken your Sam's to the beach and so no activity > on > >>> >> the > >>> >> group. > >>> >> > >>> >> > >>> >> > >>> >> > >>> >> > >>> >> Ian > >>> >> > >>> >> > >>> >> > >>> >> > >>> > > >>> > > >> > >> > > >