--- Log opened Thu Jan 04 00:00:25 2007 |
00:32 | | * McMartin adds multiple-oriented-bounding-box collision detection to the SVAF reference implementation |
00:36 | | * McMartin also rewrites bits of Sable to use it. |
00:36 | < Reiver> | When you add this reference implementation, is this stuff that you're actually coding, or just telling everyone else how to code? |
00:37 | < McMartin> | Actually coding. |
00:37 | < Reiver> | Aha. OK. |
00:37 | < McMartin> | A reference implementation is the thing that you run to make sure your own implementation (if any) actually is doing the right thing. |
00:37 | < Reiver> | Ahhhh |
00:37 | < Reiver> | OK. |
00:38 | < McMartin> | In practice, most reference implementations are good enough to just use directly. |
00:38 | < McMartin> | But if someone were to write, say, a Direct3D renderer for it, the ref. impl would be what you'd compare it against. |
00:39 | | * Reiver nod. |
00:39 | < Reiver> | I'm assuming it's thus importaint that the reference implementation is well-written and well documented? |
00:39 | < McMartin> | First, I have to actually write it~ |
00:39 | < McMartin> | http://svaf.svn.sourceforge.net/viewvc/svaf/trunk/svaf/ |
00:40 | < McMartin> | Though by now the only bit missing for use is the texture stuff, which I need to respecify. |
00:40 | < Reiver> | Right. But in general? |
00:40 | < McMartin> | It's more important that it be correct than anything else. |
00:40 | < McMartin> | The "documentation" is really the standard. |
00:41 | | * McMartin has the file standard basically in shape, and once he finishes it and it works he'll document the C and Python APIs for actually Doing Stuff. |
00:43 | | Janus [~Cerulean@Nightstar-10302.columbus.res.rr.com] has joined #Code |
00:56 | < McMartin> | It would also be Kind Of Nice to have the Lightwave converter scripts actually work in general, instead of Just The Stuff AB Made. |
01:25 | | * Reiver raises an eyebrow. |
02:21 | | MyCatSchemes [~mycatownz@Nightstar-379.dsl.in-addr.zen.co.uk] has quit [Connection reset by peer] |
02:22 | | MyCatSchemes [~mycatownz@Nightstar-379.dsl.in-addr.zen.co.uk] has joined #code |
02:37 | < ToxicFrog> | Aah, sweet lemony-fresh FUSE-flavoured goodness is mine at last. |
02:37 | | * ToxicFrog bounces around |
02:37 | < Reiver> | ? |
02:41 | < ToxicFrog> | Reiver: I now have the NTFS partition mounting via /etc/fstab using the ntfs-3g FUSE driver, and I have SMB mounting to ~/smb on login using the fusesmb driver. |
02:43 | < ToxicFrog> | The latter required /etc/profile.d/ wackiness. |
02:43 | < ToxicFrog> | (because fusesmb has permissions issues and I'm too lazy to fix it) |
02:43 | < Reiver> | Wow. |
02:43 | < Reiver> | Shiny! |
02:45 | < ToxicFrog> | if [[ -d "$HOME/smb" \ |
02:45 | < ToxicFrog> | && ! `mount | grep fusesmb | grep "on $HOME/smb"` \ |
02:45 | < ToxicFrog> | && ! `ls "$HOME/smb"` ]]; then |
02:45 | < ToxicFrog> | fusesmb "$HOME/smb" |
02:45 | < ToxicFrog> | fi |
02:46 | < ToxicFrog> | On login, mounts SMB on ~/smb if (1) ~/smb exists and is an empty directory and (2) ~/smb is not already mounted. |
02:48 | < ToxicFrog> | Actually. |
02:48 | | * ToxicFrog revises line two to && ! `mount | grep "on $HOME/smb"` \ to avoid carnage if someone, say, mounts an empty non-smb filesystem on ~/smb |
02:55 | | EvilDarkLord [althalas@Nightstar-15301.a88-115-211-62.elisa-laajakaista.fi] has quit [Ping Timeout] |
03:06 | | EvilDarkLord [althalas@Nightstar-15301.a88-115-211-62.elisa-laajakaista.fi] has joined #code |
03:13 | | Janus [~Cerulean@Nightstar-10302.columbus.res.rr.com] has quit [Quit: Jouets de Dieu, jouets de jouets, les jouets de me, naƮtre Clair enfant voire.] |
03:16 | | MyCatSchemes [~mycatownz@Nightstar-379.dsl.in-addr.zen.co.uk] has quit [Connection reset by peer] |
03:17 | | MyCatSchemes [~mycatownz@Nightstar-379.dsl.in-addr.zen.co.uk] has joined #code |
03:18 | | Chalcedon [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has joined #code |
03:18 | | mode/#code [+o Chalcedon] by ChanServ |
03:58 | | Chalcedon is now known as ChalcyOut |
04:01 | | Chalcy [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has joined #code |
04:01 | | mode/#code [+o Chalcy] by ChanServ |
04:02 | | ChalcyOut [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has quit [Ping Timeout] |
04:35 | | Serah [~-@87.72.36.ns-26407] has quit [Ping Timeout] |
04:37 | | MyCatSchemes [~mycatownz@Nightstar-379.dsl.in-addr.zen.co.uk] has quit [Connection reset by peer] |
04:38 | | MyCatSchemes [~mycatownz@Nightstar-379.dsl.in-addr.zen.co.uk] has joined #code |
04:42 | | Serah [~-@87.72.36.ns-26407] has joined #Code |
04:50 | | AnnoDomini [~farkoff@Nightstar-29077.neoplus.adsl.tpnet.pl] has joined #Code |
05:00 | | Serah [~-@87.72.36.ns-26407] has quit [Ping Timeout] |
05:26 | | Serah [~-@87.72.36.ns-26407] has joined #Code |
06:58 | | MyCatSchemes is now known as MyCatVerbs |
07:12 | | [0]ToxicFrog [~ToxicFrog@Admin.Nightstar.Net] has joined #code |
07:14 | | [0]ToxicFrog [~ToxicFrog@Admin.Nightstar.Net] has quit [Quit: Leaving] |
07:17 | | Chalcy [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has quit [Ping Timeout] |
08:49 | | You're now known as TheWatcher |
12:03 | | Stephenie is now known as Stephenie|SleepZzzz |
13:56 | | Reiver is now known as ReivZzz |
15:57 | | AnnoDomini [~farkoff@Nightstar-29077.neoplus.adsl.tpnet.pl] has quit [Quit: Back promptly.] |
15:59 | | AnnoDomini [~farkoff@Nightstar-29077.neoplus.adsl.tpnet.pl] has joined #Code |
17:22 | | AnnoDomini [~farkoff@Nightstar-29077.neoplus.adsl.tpnet.pl] has quit [Connection reset by peer] |
17:22 | | You're now known as TheWatcher[afk] |
17:23 | | AnnoDomini [~farkoff@Nightstar-29667.neoplus.adsl.tpnet.pl] has joined #Code |
17:58 | < AnnoDomini> | What's the maximum length of the border of a square fit into a circle? |
18:07 | < ToxicFrog> | As in, what's the maximum width of a square that fits into a circle, expressed in terms of the radius of the circle? |
18:07 | < AnnoDomini> | Yes. |
18:07 | < ToxicFrog> | sqrt(2r^2) |
18:08 | < AnnoDomini> | Thank you! |
18:08 | < ToxicFrog> | Simply pythagorean theorem. |
18:11 | < ToxicFrog> | You could also figure it using a cartesian coordinate system and basic trig, but this is simpler. |
18:22 | < AnnoDomini> | Hmm. I've found another way to do what I wanted, since this was a circle. |
18:23 | < AnnoDomini> | Basically, this thing halves or doubles the radius of a circle, depending on where the user double-clicks (inside, or out). |
18:24 | | * AnnoDomini hmms and gets about thinking of how the hell to generate a flat image of a cube mathematically. Or how exactly to draw straight lines with CDC. |
18:27 | | Stephenie|SleepZzzz is now known as Stephenie |
18:29 | | You're now known as TheWatcher |
18:35 | | Stephenie is now known as Stephenie|shower |
18:51 | | You're now known as TheWatcher[afk] |
19:03 | | AnnoDomini [~farkoff@Nightstar-29667.neoplus.adsl.tpnet.pl] has quit [Connection reset by peer] |
19:03 | | AnnoDomini [~farkoff@Nightstar-29667.neoplus.adsl.tpnet.pl] has joined #Code |
19:06 | | You're now known as TheWatcher |
19:19 | | EvilDarkLord [althalas@Nightstar-15301.a88-115-211-62.elisa-laajakaista.fi] has quit [Ping Timeout] |
19:29 | | Stephenie|shower is now known as Stephenie |
19:30 | | EvilDarkLord [althalas@Nightstar-15301.a88-115-211-62.elisa-laajakaista.fi] has joined #code |
19:30 | | AnnoDomini [~farkoff@Nightstar-29667.neoplus.adsl.tpnet.pl] has quit [Connection reset by peer] |
19:30 | | AnnoDomini [~farkoff@Nightstar-29667.neoplus.adsl.tpnet.pl] has joined #Code |
19:43 | | MyCatVerbs [~mycatownz@Nightstar-379.dsl.in-addr.zen.co.uk] has quit [Connection reset by peer] |
19:43 | | MyCatVerbs [~mycatownz@Nightstar-379.dsl.in-addr.zen.co.uk] has joined #code |
19:48 | | MyCatVerbs [~mycatownz@Nightstar-379.dsl.in-addr.zen.co.uk] has quit [Connection reset by peer] |
19:49 | | MyCatVerbs [~mycatownz@Nightstar-379.dsl.in-addr.zen.co.uk] has joined #code |
20:44 | | Stephenie is now known as Stephenie|Away |
21:12 | | Chalcedon [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has joined #code |
21:12 | | mode/#code [+o Chalcedon] by ChanServ |
21:23 | | Serah [~-@87.72.36.ns-26407] has quit [Connection reset by peer] |
21:25 | | Serah [~-@87.72.36.ns-26407] has joined #Code |
21:43 | | * ToxicFrog eyes C++ |
21:43 | < ToxicFrog> | Ok. Does anyone here have varargs-fu? |
21:43 | < McMartin> | Some. |
21:43 | < jerith> | Not me. :-/ |
21:43 | < ToxicFrog> | And, specifically, know why: |
21:43 | < ToxicFrog> | static int eel_get_argsv(int argc, struct eel_data_t *argv, |
21:43 | < ToxicFrog> | const char *fmt, va_list args) |
21:43 | < ToxicFrog> | { |
21:43 | < ToxicFrog> | /* ... */ |
21:43 | < ToxicFrog> | va_list args_tipple_start; |
21:44 | < ToxicFrog> | args_tipple_start = args; |
21:44 | < ToxicFrog> | Is an "incompatible types in assignment" error? |
21:44 | < McMartin> | Because varargs are an abomination unto the LORD, mainly. |
21:44 | < McMartin> | Also, if I had to guess, because "va_list" is a macro of some sort in gcc's implementation of it. |
21:45 | < ToxicFrog> | (furthermore, [[args = args_tipple_start;]] is not) |
21:45 | < McMartin> | Hmm. That's more interesting, then. |
21:45 | < McMartin> | (UQM had an entertaining feat where depending on version of gcc, it was legal or illegal to cycle through the arglist twice.) |
21:46 | < ToxicFrog> | (for those following along at home, this is KoboDeluxe-0.4pre8:eel/e_getargs.c in eel_get_argsv()) |
21:46 | < McMartin> | Try using the pre10 source instead? |
21:46 | < ToxicFrog> | The pre10 source fails to build on the first file. |
21:47 | < ToxicFrog> | The struct foo<anonymous> stuff I pasted yesterday. |
21:47 | < McMartin> | Ah. |
21:47 | < McMartin> | That's why ScummVM failed to compile, incidentally. |
21:47 | < ToxicFrog> | Which is why I'm trying pre8, which at least makes it through several files before falling over. |
21:47 | < McMartin> | Downgrade to gentoo's version of gcc~ |
21:47 | < ToxicFrog> | Oh. Hey. |
21:47 | < ToxicFrog> | pre8 also fails in the same way as pre10, it just builds in a different order. ;.; |
21:48 | < ToxicFrog> | scenes.h:58: warning: non-local variable ?const _scene scene []? uses anonymous type |
21:48 | < ToxicFrog> | scenes.h:56: warning: ?typedef const struct<anonymous> _scene? does not refer to the unqualified type, so it is not used for linkage |
21:48 | < ToxicFrog> | gamestate.h:32: error: ISO C++ forbids declaration of ?gamestatemanager_t? with no type |
21:48 | < ToxicFrog> | gamestate.h:32: error: expected ?;? before ?*? token |
21:48 | < McMartin> | I'll have some time in the airport. I'll take a look at the code then. |
21:48 | < McMartin> | Templates changed semantics recently. =P |
21:49 | < ToxicFrog> | Motherfuck! |
21:49 | < McMartin> | But I think this is the same change that broke ScummVM. Failing that, this makes five times C++ has changed incompatibly underneath me. =P |
21:49 | < ToxicFrog> | scenes.h doesn't actually appear to be using templates, though. |
21:50 | < ToxicFrog> | It is, however, using C-style "typedef struct {} name" rather than C++-style "struct name {}" or "class name { public: }" |
21:50 | < McMartin> | ... struct name {} is also C. |
21:50 | < McMartin> | As is typedef struct name {} real_name. |
21:50 | < ToxicFrog> | Yes, but IIRC it declares an instance, not a type. |
21:51 | < McMartin> | Well, yes. |
21:51 | < ToxicFrog> | Whereas "struct name {}" in C++ declares a type. |
21:51 | < ToxicFrog> | And thus more closely matches the semantics of "typedef struct {} name" in C. |
21:51 | < McMartin> | But after doing that once you can say "struct name" at will. |
21:51 | < ToxicFrog> | And get a new instance? |
21:51 | < McMartin> | struct name {} in C declares the type "struct name". Yeah. |
21:51 | < McMartin> | It's just that they need marking with struct. |
21:51 | | * ToxicFrog tried that once, and it DFW, after which he returned to using typedef struct {} name, which did. |
21:52 | < McMartin> | Most of UQM is typedef struct _name {} name. |
21:52 | < ToxicFrog> | Hmm. |
21:52 | < McMartin> | Which uses struct _name * internally if it's a recursive type, since otherwise you can't declare recursive types. |
21:52 | < ToxicFrog> | Ok, the specific decoration causing it to barf: |
21:52 | < McMartin> | Since the typedef hasn't happened yet |
21:52 | < ToxicFrog> | typedef const struct { ... } _scene; |
21:52 | < ToxicFrog> | Remove the const and it builds fine. |
21:53 | < ToxicFrog> | (until it includes gamestate.h a few lines later, anyways) |
21:53 | < McMartin> | Hmm, yes. |
21:54 | < McMartin> | I think that should be typedef struct { ... } _internal_scene; typedef const _internal_scene _scene; |
21:56 | < ToxicFrog> | Yep, that solves it. |
21:56 | < ToxicFrog> | Now to fix gamestate.h... |
21:56 | < ToxicFrog> | The issue here is: |
21:56 | < ToxicFrog> | class gamestate_t { |
21:56 | < ToxicFrog> | friend class gamestatemanager_t; |
21:56 | < ToxicFrog> | private: gamestatemanager_t * manager; |
21:56 | < ToxicFrog> | gamestate.h:32: error: ISO C++ forbids declaration of ?gamestatemanager_t? with no type |
21:56 | < ToxicFrog> | gamestate.h:32: error: expected ?;? before ?*? token |
21:57 | < ToxicFrog> | And simply putting "class gamestatemanager_t;" in front solves it. |
22:01 | < ToxicFrog> | And of course make install doesn't work, so it can't create player profiles, and it won't let you play without one. |
22:01 | < ToxicFrog> | DEATH |
22:02 | | You're now known as TheWatcher[T-2] |
22:06 | | You're now known as TheWatcher[zZzZ] |
22:35 | | AnnoDomini [~farkoff@Nightstar-29667.neoplus.adsl.tpnet.pl] has quit [Quit: No fighting in the War Room!] |
22:47 | | ReivZzz is now known as Reiver |
22:52 | | MyCatVerbs [~mycatownz@Nightstar-379.dsl.in-addr.zen.co.uk] has quit [Connection reset by peer] |
22:54 | | MyCatVerbs [~mycatownz@Nightstar-379.dsl.in-addr.zen.co.uk] has joined #code |
22:54 | | MyCatVerbs [~mycatownz@Nightstar-379.dsl.in-addr.zen.co.uk] has quit [Connection reset by peer] |
22:59 | | MyCatVerbs [~mycatownz@Nightstar-379.dsl.in-addr.zen.co.uk] has joined #code |
23:34 | | Janus [~Cerulean@Nightstar-10302.columbus.res.rr.com] has joined #Code |
23:45 | | Chalcedon [~Chalceon@Nightstar-869.bitstream.orcon.net.nz] has quit [Ping Timeout] |
23:47 | | Stephenie|Away is now known as Stephenie |
--- Log closed Fri Jan 05 00:00:25 2007 |