Do your projects push your knowledge?
Miscellaneous Forums/General Discussion/Do your projects push your knowledge?
You may all laugh but I figured out how to draw a Bezier curve today and I'm feeling pleased with myself. They look nice don't they?
I've also had to "relearn" 2D transformation matrices and projectile maths for this project. Luckily I understood both (eventually!) enough to get them to work.
What have you have to learn recently that you've been pleased with?
but I figured out how to draw a Bezier curve today
Bwahahaha.
Well, you said I would! :)
as for the second bit I kinda fluked it the first time and my current projects definitely push my knowledge in areas. I'm not happy unless i'm learning.
I've been writing up a "network infrastructure design" paper the last couple of days using knowledge i've picked up in my first few demo's. A solid document will mean a definite hard product at the end!
Anyway, congrats on the bezier hehe.
Every Project I work on pushes my knowledge because I mostly forget everything by the 3rd or 4th day after I finish.
I think I have learned Vector math 3-4 times
Definitely learn with each day on a project, that's what I love about it!
I had this "damn it's so easy, why didn't somebody find it earlier?" moment today.
Beziers are sexy.
Yep, I'm learning Truevision3D with my latest outing. It's a fairly smooth learning curve though.
I hate programming but like creating - if that makes any sense. I actively avoid learning new programming techniques or mathematics whenever I can.
Don't get me wrong, I'm pro-learning, but only as far as subjects I'm interested in go (and these tend to fall on the side of 'art' rather than 'science'.) There is absolutely no way I would ever put myself through the agony and boredom of learning anything to do with maths, and the only reason I can bear programming at all is because I approach it as if it was a creative writing exercise.
Generally speaking, I resent having to learn anything that I'm not interested in. And I've always been this way.
You may all laugh but I figured out how to draw a Bezier curve today and I'm feeling pleased with myself. They look nice don't they?
Bha, told you splines were the way to go :P
I recently learned about conditional SQL
$query = " INSERT INTO game_statistics
VALUES
('$this->unique', '$this->id', '$this->user_handle', '$this->value', '$time')
ON DUPLICATE KEY UPDATE value=
CASE '$this->type'
WHEN 'MAX' THEN IF(value < $this->value, $this->value, value)
WHEN 'MIN' THEN IF(value > $this->value, $this->value, value)
WHEN 'ADD' THEN (value + $this->value)
WHEN 'REPLACE' THEN '$this->value'
END,
timestamp='$time'
";
Mmmm conditional SQL, thats a spicey meatball!
I love programming, even if you did the same task 50 times you could still learn from it.
Personally I try to learn and tweak my coding practice from each project.
I go back and look at the first stuff i was writting, it is terrible. Go ahead a little its starting to get better. Now shoot forwards to the present day. Everything is starting to uniform without thought. Things match up and make sense.
Examples:
- all function params begin with n
- all local declarations occur at the top of the function
- all throw away values have temp_ on the front
- everything is modular!
and so on..
Just little rules that I am gradually teaching myself.
Oh just last week i started using excel to track my project. It has a todo list that shows projected and real time taken per todo item. Its bloody brilliant and has really helped me focus!
yeah I have all my stuff on an Excell spreadsheet (well several pages).
JustLuke: Yeah but sometimes I have to learn some extra programming to do some creting like making an object follow a set path in a set time etc.
Haha I just learned bezier curves a couple weeks ago for my game also. What I'm doing now is learning what Indie is doing above with storing game info in databases etc etc for the new ZG Portal. It's coming together nicely.
I wasn't criticing you Grey. Each to their own and all that. It's great that you enjoy what you do and feel that you've learned something from doing it.
I'd imagine that most of the people who post here are "in to" programming a lot more than I am. Coding-wise, whenever I manage to get something working the way I want it to I just think "Phew - Thank God that's over!" There is no sense of personal achievement or improvement there for me. :(
Yeah, my projects always push me to have to figure out how to do stuff. It's a constant learning process. Sometimes I know what I want to do but not how to do it. And sometimes later I figure out how to do something and it means that I now have to go back and re-figure-out how to do something else. I would even say that to a large degree, apart from my vision of what I'm trying to do, I don't really know how things will turn out or what I'm going to have to learn in order to make it happen. It sort of takes shape by itself.
GreyAlien, what are you working on that uses bezier curves and all this projectile math stuff?
my projects seem to for ever remind me off the 'a good design before any coding' philosphy, I just need to remember to design 1st, code later.
Chroma: Yeah I know, I found your code ;-)
AngelDaniel: Sorry I can't say. It's a casual game that's just got a few effects in it which require a bit of maths. Now I've done it, I can use it again!
Yes they do. But I also need inspiration from commercial titles. I need this "I can do that too" kick.
If a project reaches a certain size then it's going to force you to work with modules. It's much easier to develop a new function in a mini program and then transplant the working function to the game source than to work with the game source directly, because each time you'll run the full game it's gonna take a minute or so to load.
I am most creative when I make many breaks during the programming session. In this breaks I try to solve a given problem virtually in my head while I eat some chips or so. It works much better than brute-force coding for hours and hours.
Sometimes, when you seem to be unable to fix a bug, you simply have to go sleep. Next morning you'll solve the problem in 2 minutes.
That's some of what I've learnt.
yep that's absolutely true. Creative breaks and bug fixing breaks are vital. Programming for long hours is fine if it's easy stuff but if it gets hard, go and have a break and think about it first.
Is it possible to program something without learning something new?
I was pleased when I learnt delta timing, that made a big improvement for lots of my projects!
recently its been getting an online user account system working within bmax, there's always something new to learn :D
next its how Im going to get in-game ads in there!
yeah a decent timing system is so cool once you've got it sorted.
Is it possible to program something without learning something new?
Well I was talking about really pushing your knowledge in a big way with some code rahter than learning some minor but albeit potentially useful bit of code.
Last thing I learnt game programming was either an effective timing system for my current game or creating a random number generator or various features of Softimage XSI. Because of my background in mathematics and the nature of the games I create I are not usually challenged by the programming side of things but am constantly learning how to improve my game art with XSI.
I think if I wanted to push myself to learn something new with programming it would be along the lines of understanding and reproducing how png images are compressed, or how to create tracked music - things I'm likely to just ignore because they're 'too hard' for me or I don't need them.
What have you have to learn recently that you've been pleased with?
To do my Qt module, I had to learn C++, which I did as I went. So it was kind of a 3-week crash course.
Actually, all my modules require me to learn something new, as I usually have very little prior knowledge of the details of the task I'm about to work on.
For example, yesterday I learned all about
P-factor and
propwash while working on my Flight Dynamics module, as my Cessna 182 insisted on banking to the left all the time... and there was me - until I found out all about it - thinking that I was doing something wrong in the code...
Then I tried out an F16, and nearly pee'd my undies... but that's another story...
Latest big thing I'm working on learning is Lisp, and more specifically, how to use and apply the extremely powerful Lisp macro's.
It can be hard to get a conceptual grasp of code that writes code that writes code, piecing together bits and pieces of the code sent to it and transforming it into something entirely different.