--- Log opened Fri Nov 27 00:00:49 2009 |
00:29 | | You're now known as TheWatcher[T-2] |
00:32 | | You're now known as TheWatcher[zZzZ] |
01:26 | | Vornicus-Latens is now known as Vornicus |
01:43 | | * Vornicus has wave invites. |
01:43 | | * Vornicus is uncertain what to do with wave yet anyway |
01:52 | < dmlandrum> | Wave requires other people you know in order to be useful. |
02:34 | | * Orthia has wave! |
02:50 | < Rhamphoryncus> | Vornicus: I've got a pile too. Wave has no equivalent of channels or mailing lists, which is the main thing we want it to replace |
03:08 | | Vornicus [vorn@ServerAdministrator.Nightstar.Net] has quit [[NS] Quit: Leaving] |
03:11 | | Vornicus [vorn@ServerAdministrator.Nightstar.Net] has joined #code |
03:11 | | mode/#code [+o Vornicus] by Reiver |
03:27 | | Attilla [The.Attilla@FBC920.92E3D3.F76883.99588C] has quit [Connection reset by peer] |
04:18 | < Pinkhair> | I've been meaning to try wave |
04:20 | < Alek> | but have you yet tried particle? |
04:25 | | Derakon [Derakon@Nightstar-90d553ba.ca.comcast.net] has joined #code |
04:25 | | mode/#code [+o Derakon] by Reiver |
04:28 | <@Derakon> | Ah hah, Pygame can do direct pixel access. Excellent. |
04:28 | <@Derakon> | Now I just have to remind myself how to write raytracers. |
05:11 | <@Derakon> | ...argh, I find myself wanting to reimplement POV-Ray. |
05:11 | <@Derakon> | This is not a good path to go down. |
05:20 | < Pinkhair> | hehehe |
05:21 | <@Vornicus> | heh. I found myself going "shit I could make Python spew preprocessed POV-Ray faster than POV-Ray itself can" but then I kinda got stuck because I couldn't figure out how to make both delayed and non-delayed writing. |
05:23 | | * Derakon quickly adds another dimension to his Vector2D class from Jetblade. |
05:23 | <@jerith> | Operation Fox Assault needs playtesters again. |
05:24 | <@jerith> | svn://hodgestar.za.net/rinkhals/trunk/rinkhals <-- If anyone is interested. |
05:47 | <@Derakon> | Blargh. Cameras need so many variables. Image width. Image height. How big pixels are. Where the camera is. What it's aimed at. What direction is up. |
05:48 | <@Derakon> | And that's not even getting into things like depth of field or aperture length. |
05:54 | | Derakon [Derakon@Nightstar-90d553ba.ca.comcast.net] has quit [[NS] Quit: Leaving] |
06:31 | < Rhamphoryncus> | bluh dependencies |
06:35 | <@Vornicus> | Generally you can reduce a camera to a matrix and a rectangle. |
06:39 | < Rhamphoryncus> | jerith: the move chicken controls are a pain |
06:39 | < Rhamphoryncus> | jerith: I expect to click chicken, click target, click chicken, click target, etc |
06:40 | < Rhamphoryncus> | jerith: instead I have to click select chicken, click chicken, click move chicken, click target, click select chicken, click chicken, click move chicken, click target, etc |
06:40 | <@jerith> | Rhamphoryncus: We're still working on making it more discoverable. |
06:40 | <@jerith> | You can move multiple chickens at once, though. |
06:40 | < Rhamphoryncus> | I did find out the right button works by accident |
06:40 | <@jerith> | And right-click... yeah. |
06:42 | < Rhamphoryncus> | wait, do they move on their own now? o.O |
06:42 | <@Kazriko> | Hrmph. Space Trader - Merchant Marine is utterly mediocre... |
06:44 | <@jerith> | They do. Up to one square. |
06:44 | < Rhamphoryncus> | Selecting multiple is shift-click. No reason that can't work even in move mode |
06:44 | <@jerith> | You also need to chop down tree to get wood to buy buildings. |
06:44 | <@jerith> | So noted, thanks. |
06:45 | < Rhamphoryncus> | Or drag a box over them |
06:45 | <@jerith> | Dragging boxes is somewhat problematic with the libraries. |
06:46 | < Rhamphoryncus> | k |
06:46 | <@jerith> | Also, pyggy is on Saturday. :-) |
06:46 | < Rhamphoryncus> | hung while moving some chickens |
06:46 | < Rhamphoryncus> | wazzat? |
06:47 | <@jerith> | I'm very interested in game balance issues as well. |
06:47 | <@jerith> | pyggy is like pyweek, only you get the interveing three months to work on the game. |
06:47 | < Rhamphoryncus> | Shall I ctrl-c to get a traceback? |
06:47 | <@jerith> | Please. |
06:48 | < Rhamphoryncus> | window poofed and sound stopped.. still hung |
06:48 | <@jerith> | firxen at gmail, or paste it into a wave. :-) |
06:49 | <@jerith> | And now I must go to work. Talk again later. |
06:49 | | AnnoDomini [annodomini@Nightstar-d8d67390.adsl.tpnet.pl] has joined #code |
06:49 | | mode/#code [+o AnnoDomini] by Reiver |
06:49 | <@jerith> | And thanks. :-) |
06:53 | < Rhamphoryncus> | Sent what little info I got |
07:29 | | MyCatVerbs [mycatverbs@Nightstar-f43ca811.blueyonder.co.uk] has quit [Ping timeout: 121 seconds] |
08:14 | | EvilDarkLord [jjlehto3@Nightstar-f1ccbb45.hut.fi] has quit [Ping timeout: 121 seconds] |
08:16 | | EvilDarkLord [jjlehto3@Nightstar-f1ccbb45.hut.fi] has joined #code |
08:24 | | Vornicus is now known as Vornicus-Latens |
08:48 | | You're now known as TheWatcher |
08:59 | | Rhamphoryncus [rhamph@Nightstar-a62bd960.abhsia.telus.net] has quit [Client exited] |
09:07 | | gnolam [lenin@Nightstar-38637aa0.priv.bahnhof.se] has joined #code |
10:19 | < gnolam> | Only 24 grep matches for // HACKHACK now. The code is improving! |
10:27 | <@jerith> | Oops, forgot to check back in here. |
10:43 | < gnolam> | Also: no more ugly seams in my cubemap. |
10:43 | < gnolam> | Turns out it was a billboarding issue. |
10:51 | | Tarinaky [Tarinaky@Nightstar-a3012735.adsl.virginmedia.net] has quit [Ping timeout: 121 seconds] |
11:05 | | Tarinaky [Tarinaky@Nightstar-050afa1e.adsl.virginmedia.net] has joined #code |
11:35 | | Attilla [The.Attilla@FBC920.92E3D3.F76883.99588C] has joined #code |
11:35 | | mode/#code [+o Attilla] by Reiver |
12:09 | <@jerith> | 07:23 <@jerith> Operation Fox Assault needs playtesters again. |
12:09 | <@jerith> | 07:24 <@jerith> svn://hodgestar.za.net/rinkhals/trunk/rinkhals <-- If anyone is interested. |
12:09 | <@jerith> | </blatant appeal for help> |
12:12 | <@AnnoDomini> | Is there a normal link somewhere? :p |
12:16 | < gnolam> | ... and I'm still reading that as Ringhals. |
12:38 | | Attilla [The.Attilla@FBC920.92E3D3.F76883.99588C] has quit [Connection reset by peer] |
12:38 | | Attilla_ [The.Attilla@FBC920.92E3D3.F76883.99588C] has joined #code |
12:54 | <@jerith> | AnnoDomini: There aren't any public builds, if that's what you're asking. |
12:56 | <@AnnoDomini> | Pity. I am a cat, I cannot use that. |
12:57 | <@jerith> | The Mac OS stuff is broken (thanks, Snow Leopard), the Windows build is painful and the Linux build is pretty much just a tarball of the code. |
13:00 | | AbuDhabi [annodomini@Nightstar-e504a787.adsl.tpnet.pl] has joined #code |
13:02 | | AnnoDomini [annodomini@Nightstar-d8d67390.adsl.tpnet.pl] has quit [Ping timeout: 121 seconds] |
13:18 | | AnnoDomini [annodomini@Nightstar-e504a787.adsl.tpnet.pl] has joined #code |
13:18 | | mode/#code [+o AnnoDomini] by Reiver |
13:20 | | AbuDhabi [annodomini@Nightstar-e504a787.adsl.tpnet.pl] has quit [[NS] Quit: BRB.] |
13:20 | | AnnoDomini [annodomini@Nightstar-e504a787.adsl.tpnet.pl] has quit [Client closed the connection] |
13:20 | | AnnoDomini [annodomini@Nightstar-e504a787.adsl.tpnet.pl] has joined #code |
13:20 | | mode/#code [+o AnnoDomini] by Reiver |
13:21 | <@AnnoDomini> | irssi has a tendency to continue to live even when its terminal is dead. |
13:22 | <@jerith> | irssi+screen. :-) |
13:25 | <@AnnoDomini> | Is screen for Windows? If so, is there a binary available? |
13:27 | < TheWatcher> | There's a version of screen installable through cygwin, but I know of no 'stand alone' windows binaries. |
13:30 | < gnolam> | Terminals, burn 'em all \ Slaves to silicon |
13:32 | | * TheWatcher args at this sql |
13:36 | < SmithKurosaki> | Yay screen! |
13:36 | < gnolam> | TheWatcher: Oh? |
13:37 | < TheWatcher> | http://pastebin.starforge.co.uk/28 - given data like that, I'm trying to work out a query that will give me 4077 and 4111 but not 4040 (ie: I want the row that corresponds to the maximum attempt for each user) |
13:40 | | * TheWatcher suspects this involves wranglign GROUP BY, which he's had little coalface experience with |
13:40 | <@AnnoDomini> | select * from tbWhatever where attempts=max(attempts); or something. |
13:40 | <@AnnoDomini> | I'm unsure of the syntax. |
13:40 | <@AnnoDomini> | Or whether aggregates are allowed to work like this. |
13:40 | < TheWatcher> | They aren't |
13:41 | <@AnnoDomini> | I suggest a shub-niggurath^W^W subselect. |
13:42 | <@AnnoDomini> | Are you required to do this with only one sql command? |
13:42 | < TheWatcher> | No, but I'd prefer to. |
13:43 | <@AnnoDomini> | Subselects are the way to go, I think, then. |
13:44 | <@AnnoDomini> | select * from tbWhatever where attempts=(select max(attempts) from tbWhatever); ? |
14:22 | | Attilla_ is now known as Attilla |
14:46 | | * TheWatcher makes a note to viciously murder the person responsible for developing Moodle's quiz module |
14:51 | < Namegduf> | You're using it from the staff side, right? |
14:51 | < TheWatcher> | I'm using it from the /database/ side |
14:51 | < Namegduf> | Oh. |
14:51 | | * Namegduf pats. |
14:52 | < TheWatcher> | Assignments? Trivial. The table structure is vaguely questionable, but using it is easy. Quizzes are all over the fucking shop. |
14:52 | < Namegduf> | At the place I went to college at, they had it's My Courses page for students broken for most of the year. |
14:52 | < Namegduf> | I don't know if they ever fixed it. |
14:53 | < Namegduf> | It was complaining about an error in a hideous SQL query, which wasn't that hard to find, really, looking at it. |
14:55 | < Namegduf> | What're you trying to do with it? |
14:56 | < TheWatcher> | Integrate it with a student records system the department runs. |
14:58 | < TheWatcher> | There are rumours that, once I have done all this, the system will have become so complex it will become self-aware, and take over the world. This is a complete fabrication. |
15:11 | | * AnnoDomini wonders where the hell does MS Access have the 'run query' button. |
15:20 | <@AnnoDomini> | All I can see is wizards and related crap. I already have the database-creating SQL code, and now want to use it. |
15:20 | <@AnnoDomini> | But I'm stumped at how. |
15:26 | < gnolam> | Yay, I can actually get the project to work on the System From Hell now. |
15:26 | < gnolam> | Sure, it runs at less than 1 FPS, but it actually runs. |
15:33 | <@AnnoDomini> | It's not too much of a bother to create it by hand (I think) but I'd like to know how to execute this god-damned query Power Designer gave me. |
15:33 | <@AnnoDomini> | *these, queries |
15:33 | | * TheWatcher suggests using a Real Database >.> |
15:35 | <@AnnoDomini> | This is the only database I can find an ASP.NET tutorial for. I'd happily use a Sybase database, if I knew HOW. |
15:40 | | * TheWatcher would just install the windows binary of mysql and the mysql odbc driver, and talk to it through that |
15:40 | < TheWatcher> | http://www.15seconds.com/issue/050210.htm and http://www.15seconds.com/issue/050407.htm for example |
16:17 | <@AnnoDomini> | I'll try using MS SQL Server first. I know it has a query command line, and any modifications shouldn't be too difficult. |
16:32 | | MyCatSchemes [mycatverbs@Nightstar-3b2c2db2.bethere.co.uk] has joined #code |
16:42 | < MyCatSchemes> | Unit tests++, again. |
16:50 | < gnolam> | Search for the cause of a bug leading to the fix of an unrelated, much more serious bug++. |
17:01 | | Rhamphoryncus [rhamph@Nightstar-a62bd960.abhsia.telus.net] has joined #code |
17:16 | | You're now known as TheWatcher[afk] |
17:41 | | Derakon [Derakon@Nightstar-90d553ba.ca.comcast.net] has joined #code |
17:41 | | mode/#code [+o Derakon] by Reiver |
17:41 | <@Derakon> | The up vector for cameras is giving me trouble. >.< |
17:41 | <@Vornicus-Latens> | Tell me about it; I can probably help you. |
17:42 | <@Derakon> | That is, a camera has location, a point to aim at, and an up vector that determines how it rotates about its aim vector. |
17:42 | <@Derakon> | The first two are easy. |
17:42 | <@Derakon> | But I'm having trouble figuring out how to incorporate the third. |
17:44 | <@Vornicus-Latens> | The up vector is, usually, one of the basis vectors of the camera matrix... ah, here is what you need to do; your right vector is a normalized cross product of your up and point_at vectors. I think. |
17:45 | <@Derakon> | That just shifts the problem to figuring out how to specify/calculate the right vector. |
17:46 | <@Vornicus-Latens> | Then once you have the right vector, the /true/ up vector is the cross product of point_at and right |
17:46 | <@Vornicus-Latens> | This gives you the three basis vectors -- point_at (technically location - point_at), right, and true up. |
17:48 | < gnolam> | Derakon: do you need to include roll? If not, you can just cross the forward vector with (0, 1, 0) (assuming y^ is the up axis) and normalize the result to get the right vector. |
17:49 | < gnolam> | I'm already assuming that you have restrictions against pointing straight up or straight down; that transition is a pain in the ass unless you go quat anyway. |
17:49 | <@Derakon> | Heh, point. |
17:50 | <@Derakon> | That seems like it should work; in any event, it should let me get on to the actual raycasting. |
17:50 | <@Derakon> | Thanks. |
17:57 | <@Vornicus-Latens> | Yeah, this is correct; cross specified up with forward to get right, cross right with forward to get true up. |
18:07 | <@Derakon> | Right, now I just have to work out the math to generate the rays. Which I had my whiteboard with me, but it's at work. |
18:09 | <@Derakon> | This seems like it should work: http://paste.ubuntu.com/329581/ |
18:09 | <@Derakon> | ...well, that gets me the location of each pixel. I need to subtract the camera's location and normalize to get the ray. |
18:23 | <@Vornicus-Latens> | I once wrote a raytracer in Python but couldn't figure out how to actually write an image. So I instead wrote a thing that rendered the pixels in POV-Ray. |
18:23 | <@Derakon> | PyGame provides direct pixel access and can save images. |
18:23 | <@Derakon> | Alternatively, you can use the "text" image format that ImageMagick parses, and the 'convert' utility to turn that into something you can actually look at. |
18:24 | <@Derakon> | But that results in some rather beefy intermediary files. |
18:24 | <@Vornicus-Latens> | Der: PIL would actually probably work better. |
18:25 | <@Derakon> | Hm. Very likely! |
18:25 | <@Derakon> | But I already have PyGame installed. |
18:25 | <@Vornicus-Latens> | heh |
18:25 | <@Vornicus-Latens> | I actually used PIL to stitch together multi-layered Metroid Fusion maps. |
18:29 | <@Vornicus-Latens> | Which was pretty impressive but I still needed to fix some things - apparently in Fusion the half-speed background doesn't keep lock step so it moves around a bit. |
18:32 | <@Derakon> | Okay, a ray and a sphere can intersect at 0, 1, or 2 points. If the intersection is at 1 point, then that means that the projection of the sphere onto the ray has a length equal to the sphere's radius. |
18:32 | <@Derakon> | If the length is less than the radius, of course, we get 2 intersections; if more, we get 0. |
18:34 | <@Derakon> | Blargh. Visualizing this is hard. I should get some scratch paper. |
18:43 | | Tarinaky [Tarinaky@Nightstar-050afa1e.adsl.virginmedia.net] has quit [Ping timeout: 121 seconds] |
18:44 | | * Derakon successfully generates an entirely-black image. ?.? |
18:48 | <@Vornicus-Latens> | Woot |
18:53 | <@Derakon> | Well, the rays appear to be getting firedi n plausible directions. So I must just be mucking up the intersection test, which I copied from a website. ?.? |
18:57 | | Tarinaky [Tarinaky@Nightstar-d26d6d9b.adsl.virginmedia.net] has joined #code |
19:00 | | You're now known as TheWatcher |
19:02 | < TheWatcher> | Someone was Wrong on the Internet?! |
19:04 | <@jerith> | TheWatcher: Never! You must be mistaken. |
19:06 | < gnolam> | Derakon: Err... don't you just want regular ray-sphere intersection? Which in turn, is just a degenerate case of minimum distance? |
19:07 | < gnolam> | (If the minimum distance between the sphere's center and the ray is less than the sphere's radius, you have an intersection) |
19:12 | < gnolam> | Which reminds me to implement frustum culling. |
19:13 | < gnolam> | (Which is actually just minimum distance between point and plane in disguise. :)) |
19:31 | <@Derakon> | Ha-HA! http://derakon.dyndns.org/~chriswei/temp2/out.png |
19:32 | | * TheWatcher tries pressing the red button |
19:33 | <@Derakon> | Next thing to do is calculate surface normals and light, I guess. |
19:33 | <@Derakon> | This is 119 lines of Python, incidentally. Not counting the vector3d files. |
19:34 | | MyCatSchemes [mycatverbs@Nightstar-3b2c2db2.bethere.co.uk] has quit [[NS] Quit: Leaving] |
19:36 | <@Derakon> | ...oh, right. Moving the camera around is not going to change what a flat-shaded sphere is going to look like so long as the camera continues to look directly at the sphere and its distance to it does not change. |
19:36 | | * Derakon successfully makes the sphere shrink, though! |
19:37 | <@Vornicus-Latens> | Heh |
19:56 | < gnolam> | Well, surface normals are easy with spheres. :) |
20:08 | < gnolam> | http://www.lysator.liu.se/~gnolam/temp/ocean_WIP_7.jpg |
20:09 | < gnolam> | Whitecaps, first test. |
20:10 | <@Vornicus-Latens> | Not bad; the gradient needs to be stronger at the tips though |
20:25 | < gnolam> | Thanks. |
20:25 | < gnolam> | Test 2: http://www.lysator.liu.se/~gnolam/temp/ocean_WIP_8.jpg |
20:27 | <@Vornicus-Latens> | Much better. |
20:45 | < gnolam> | Successful whitecaps call for a nightcap. |
20:45 | | * gnolam pulls out the single malt. |
20:47 | < gnolam> | (Well, it's actually medicinal. I feel a cold coming on.) |
20:54 | <@Derakon> | Gnolam: yeah, surface normals are gonna be less easy for the fractal, though. |
21:26 | <@Vornicus-Latens> | try "essentially impossible" |
21:26 | <@Derakon> | I think you could fake it by calculating adjacent voxels to the impact location. |
21:26 | <@Vornicus-Latens> | I can pretty well guarantee that the fractal curve is differentiable nowhere. |
21:31 | | You're now known as TheWatcher[afk] |
21:34 | < gnolam> | Derakon: that would work. |
22:00 | < gnolam> | Speaking of surface normals, I still have to fix the calculation of mine. :( |
22:36 | <@McMartin> | I think I have some code for that from Sable somewhere, or in SVAF, but I won't get a chance to locate it for another 30 hours or so. |
22:43 | <@AnnoDomini> | Half a day, numerous tutorials and one several crappy MS applications later, I have a Web Parts enabled web site that manages to obtain data from the Access database I so painstakingly implemented by hand. |
22:44 | | You're now known as TheWatcher |
22:48 | <@AnnoDomini> | And finally, my Iroquis get a Conquistador. Now I can move about without fear of attrition killing everyone in my armies. |
22:56 | <@AnnoDomini> | Ooh. New monarch. This one is more awesome. |
23:00 | < gnolam> | Just like the flawless monarch butterfly from which he takes his name, the Monarch has many ways to sting? |
23:03 | <@AnnoDomini> | He's just as well versed in Diplomacy and Administration, but at the same time is more adept at War. |
23:04 | <@AnnoDomini> | Maybe now my troops will stop behaving like the native yokels they face are Roman Legionnaires. |
23:06 | < gnolam> | As the monarch butterfly spins its deadly web, so shall you set your fiendish trap? |
23:07 | <@AnnoDomini> | I hope my economy eventually becomes worth a crap. We have nearly 30% inflation. |
23:08 | <@AnnoDomini> | Arrrrrgh. |
23:08 | <@AnnoDomini> | 9000 men versus 1500 men. The 9000 lose 500 and decide to leave with great haste. |
23:12 | <@Vornicus-Latens> | what's this game, Anno? |
23:22 | <@AnnoDomini> | Europa Universalis 2. |
23:24 | <@AnnoDomini> | The second battle of Seminole fares better. |
23:51 | < gnolam> | Mmm, the joy of not having access to modern formats. |
23:52 | < gnolam> | The collected textures, in PNG format: 850 kB. |
23:52 | < gnolam> | Actual size of the textures directory, due to the fact that I have to use BMPs: 22 MB. |
23:58 | <@Derakon> | Only distribute it in gzipped form. |
23:58 | <@Derakon> | Hard drive space is fortunately still generally pretty cheap. |
--- Log closed Sat Nov 28 00:00:03 2009 |