• What are you working on? July 2012
    1,611 replies, posted
  • [QUOTE=Naelstrom;36748593]No, from what I know it is because your exe is compiled in debug mode, making it require visual studio debug libraries. Not everyone has visual studio.[/QUOTE] I have a lot of visual studio versions installed on my computer, including C# 2010 and C++ 2008, and yet i can't run this.
  • Probably because you need C++ 2010. MS Visual C++ Runtime (v10)(Debug)
  • I have decided to revive my ComputerCraft masterpiece [i]Roguecraft[/i] in my shell because it's already mostly compatible. Here you can see the upgraded HD graphics, which are now in color. Below my carefully crafted pillar of sand is an Errur, a wild beast with metaphysical properties. [img]http://puu.sh/I9sq[/img] Let's see what happens when it touches you... [img]http://puu.sh/I9tz[/img] Random characters start appearing and "FREE MAAAAARS" is burned into the middle of your screen in flashing colors Because this exits the game and persists without interrupting use of the shell, it's much more effective and more like a virus. It really gives you more incentive to stay alive than a simple "GAME OVER" [editline]13th July 2012[/editline] Here's the new and improved title screen [img]http://puu.sh/I9GT[/img]
  • [QUOTE=Naelstrom;36748593]No, from what I know it is because your exe is compiled in debug mode, making it require visual studio debug libraries. Not everyone has visual studio.[/QUOTE] Ooh, then do you know how i can make it into a proper .exe? I couldn't find much help with a search, surprisingly.
  • [QUOTE=krazipanda;36749534]Ooh, then do you know how i can make it into a proper .exe? I couldn't find much help with a search, surprisingly.[/QUOTE] [img]http://i.imgur.com/jjzSD.png[/img]
  • [QUOTE=Overv;36745834]I think the problem was that he claimed to have invented geometry wars.[/QUOTE] Not sure if there were other reasons but the famous quote was directed at me and I don't remember being offended in any way. I actually did say that I saw grids and distortion in his game and decided to remake it. A few posts above it even.
  • I was talking to my girlfriend, and she agrees that the main reason we think that quote was bad was because he invokes his girlfriend out of nowhere just to point out he has one.
  • [QUOTE=Ziks;36750206]I was talking to my girlfriend, and she agrees that the main reason we think that quote was bad was because he invokes his girlfriend out of nowhere just to point out he has one.[/QUOTE] Yeah but I'm pretty sure there's more than one other person here guilty of the same. Besides, it's not like he was rubbing it in anyone's face.
  • [QUOTE=Ziks;36750206]I was talking to my girlfriend, and she agrees that the main reason we think that quote was bad was because he invokes his girlfriend out of nowhere just to point out he has one.[/QUOTE] My girlfriend just told me you're doing the same.
  • [QUOTE=Lexic;36734742]Generally you try to abstract your drawing related code into a few generic classes to avoid repeating the same code over and over. In these cases, you store any uniform or attribute locations that you want to update in the class, so you don't have to look them up every time. If you hide the fact that you need to perform the lookup, people won't bother with caching the value.[/QUOTE] Couldn't almost the same thing be said about binding buffers?
  • [QUOTE=Richy19;36744416]Can someone explain how do quaternions work?[/QUOTE] Quaternions are like complex numbers except they have three imaginary numbers instead of just one [img]http://latex.codecogs.com/gif.latex?i^2%20=%20j^2%20=%20k^2%20=%20ijk%20=%20-1[/img] It follows from the above equation that the product of two different imaginary units is the third imaginary unit, either positive or negative, depending on the order of the operands. Thus multiplication isn't commutative and division is undefined. Addition and subtraction is done as you would with complex numbers. The simplest way to represent quaternions is as the sum of a scalar and a three-dimensional vector, where the vector represents the imaginary numbers.
  • [QUOTE=ThePuska;36751017]Quaternions are like complex numbers except they have three imaginary numbers instead of just one [img]http://latex.codecogs.com/gif.latex?i^2%20=%20j^2%20=%20k^2%20=%20ijk%20=%20-1[/img] It follows from the above equation that the product of two different imaginary units is the third imaginary unit, either positive or negative, depending on the order of the operands. Thus multiplication isn't commutative and division is undefined. Addition and subtraction is done as you would with complex numbers. The simplest way to represent quaternions is as the sum of a scalar and a three-dimensional vector, where the vector represents the imaginary numbers.[/QUOTE] If rotation is given as a 4 value quaterion, how do you apply it to a 4x4matrix?
  • I've never bothered to learn how quaternions actually work, anything I need can be looked up, added to a quat class and then I don't need to worry about it again. Same with anything math related, I'm not too good with maths. [url]http://clb.demon.fi/MathGeoLib/reference.html[/url] This is an absolute goldmine of math shit.
  • [QUOTE=ArgvCompany;36750997]Couldn't almost the same thing be said about binding buffers?[/QUOTE] Not really, since in this case the buffers are objects whereas uniform locations are identifiers. It makes sense for a buffer object to automatically bind itself when performing operations on itself, but performing lookups is hidden functionality. Perhaps the problem could be avoided by program.LookupUniform returning a Uniform object, the value of which you can then set via the object.
  • [QUOTE=Richy19;36751036]If rotation is given as a 4 value quaterion, how do you apply it to a 4x4matrix?[/QUOTE] [cpp]/* quat = cos(theta/2) + sin(theta/2) * axis */ /* Axis is contained in the imaginary vector * It's just scaled */ axis = quat.vector / quat.vector.length(); /* The real part of the quaternion is cos(theta/2) * If the real part is constrained so that the angle * is guaranteed to lie for example between 0..pi, * the real part alone is sufficient to calculate the theta: * theta = 2.0 * acos(quat.real); */ cos_t = quat.real; sin_t = quat.vector.x / axis.x; /* Otherwise using atan2 should work. */ theta = 2.0 * atan2(sin_t, cos_t); /* Then build the 4x4 matrix using the axis and the theta. * Matrix rotation is bullshit that makes no sense */ cos_t = cos(theta); sin_t = sin(theta); ax = axis.x * axis.x; ay = axis.y * axis.y; az = axis.z * axis.z; axy = axis.x * axis.y; axz = axis.x * axis.z; ayz = axis.y * axis.z; mtx[0] = cos_t + ax * (1 - cos_t); mtx[1] = axy * (1 - cos_t) - axis.z * sin_t; mtx[2] = axz * (1 - cos_t) + axis.y * sin_t; mtx[4] = axy * (1 - cos_t) + axis.z * sin_t; mtx[5] = cos_t + ay * (1 - cos_t); mtx[6] = ayz * (1 - cos_t) - axis.x * sin_t; mtx[8] = axz * (1 - cos_t) - axis.y * sin_t; mtx[9] = ayz * (1 - cos_t) + axis.x * sin_t; mtx[10] = cos_t + az * (1 - cos_t); mtx[3] = 0; mtx[7] = 0; mtx[11] = 0; mtx[12] = 0; mtx[13] = 0; mtx[14] = 0; mtx[15] = 1;[/cpp]
  • [QUOTE=Kopimi;36749609][img]http://i.imgur.com/jjzSD.png[/img][/QUOTE] Doesn't matter if it's a debug or release build, you're still gonna depend on the VC++ runtime. [img]http://i.imgur.com/h4A1p.png[/img] Set "Runtime Library" to /MT on release and /MTd on debug. Keep in mind that all libraries you link to also need to do this, unless they're system libraries.
  • [QUOTE=Torrunt;36732789]I haven't done much programming lately but I went back and improved my ray-casting function. Before I had a loop that incremented a point in the direction of the target until it was inside another tile to check each one. I've now replaced that loop with some line intersection checks. I do a check from where the current point is to the target against each side of the tile the point is currently in. If it intersects with any side then I set the point to that intersection point (and add a bit so it goes inside the next tile). I also found a bug where ray-casts could go through corners (show below) so I fixed that. Pretty easy fix, I just made it so if the next tile checked is not at the same x [U]and[/U] y as the previous then set the x to the same as the previous. [img]http://i.imgur.com/v4pZt.png[/img] Here's the video i posted of it before: [video=youtube;kqHGXj6mGo8]http://www.youtube.com/watch?v=kqHGXj6mGo8[/video][/QUOTE] Just as suggestion, you could have it so the guard or person or whatever chases the player to the last known location after they lost sight. Not sure if you're going to go further with this, but thought I might as well say something.
  • Well that was a really tough decision. Just started a few weeks ago fulltime(from a few months of parttime) at this company and already I am going to another company. Definitely need to come up with a way to break it to my current boss so that I don't burn bridges. I mean really it boiled down to 3 things which made the final decision easier. Not having to deal with working internationally (no benefits, taxes, etc), having an actual physical office, and a great opportunity to work with other skilled coders working on a fun project.. Anyways hopefully starting Monday. Assuming I can get 2 references by tonight. I got to say the hardest part before it has even started. Is finding 2 references that are available this afternoon(both my work references are sleeping) and finding my SSN card in storage(its that or get a passport).
  • Working on decoding the riven sound format. It's actually a load of custom headers followed by the [url=http://wiki.multimedia.cx/index.php?title=IMA_ADPCM]IMA ADPCM[/url] format, and it's decoding the ADPCM part which I'm having troubles with. I've nearly got it. Here's the sound file as extracted by Riveal: [url]http://www.sendspace.com/file/2b7afl[/url] Here's my decoded version: [url]http://www.sendspace.com/file/7gpbjg[/url] You can still hear the correct sound pattern in my version but it's considerably more noisy. I don't suppose anyone here has a working IMA ADPCM decoder I can look at? Preferably in C/C++/C#.
  • [IMG]http://puu.sh/Ii0f[/IMG] Perlin Noise? [IMG]http://puu.sh/Iic7[/IMG] Thats better [IMG]http://puu.sh/Iim2[/IMG] Perfect
  • Uploading my package manager to github, and now I have to decide on a license. Since people probably aren't going to need to redistribute it without source code, I could probably go ahead and use GPL. I don't really like GPL though, so I'm going to go to TLDRLegal and see what else there is. [editline]13th July 2012[/editline] MIT Looks good.
  • [QUOTE=neos300;36757650]Uploading my package manager to github, and now I have to decide on a license. Since people probably aren't going to need to redistribute it without source code, I could probably go ahead and use GPL. I don't really like GPL though, so I'm going to go to TLDRLegal and see what else there is. [editline]13th July 2012[/editline] MIT Looks good.[/QUOTE] I seem to be using new/modified BSD license for all my OS projects
  • [QUOTE=neos300;36757650]Uploading my package manager to github, and now I have to decide on a license. Since people probably aren't going to need to redistribute it without source code, I could probably go ahead and use GPL. I don't really like GPL though, so I'm going to go to TLDRLegal and see what else there is. [editline]13th July 2012[/editline] MIT Looks good.[/QUOTE] [url]www.tldrlegal.com[/url] [editline]13th July 2012[/editline] Clocks, come at me!
  • Here it is if anyone wants to poke at the code. [editline]13th July 2012[/editline] [url]https://github.com/neos300/shark[/url]
  • Changed the name of SteamKit++ to OpenSteamClient, also added friends list support & stuff: [img]http://i.imgur.com/hJDsX.png[/img]
  • Anyone know who in FP was who was working on that android 3d wallpaper? Finally managed to get a Galaxy S II and would be neat to have it.
  • Finally got sound decoding to work! The riven sound files are either in IMA ADPCM format, or MP2 format. Both formats are now decoded into a SoundEffect object (XNA) and sound just like the original assets! I had to use BASS to convert MP2 into PCM, but I don't think it's a problem. I'd post screenshots but yea.. [editline]14th July 2012[/editline] Next up, reading the movie files - they're quicktime .movs. I'm going to try using the .net Media Foundation stuff first, then just google helplessly for a .mov reader in .net.