Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

chrono1081

macrumors G3
Original poster
Jan 26, 2008
8,453
4,156
Isla Nublar
Hi guys,

For one of my upcoming classes the class gets split into groups and each group has to write a module for a game engine. (As you and I both know, the engine will probably not work :p).

Anyway, I'm going to make our group use a subversion tool that way we can all work much more efficiently. I could use Tortoise SVN via a virtual Windows machine but I was wondering if anyone knows of a subversion tool that works on Mac and Windows. It'll have to be free since I'm sure other students in the group wouldn't want to pay for it.

Anyone have any suggestions? (Does something like that exist?)
 

jiminaus

macrumors 65816
Dec 16, 2010
1,449
1
Sydney
Can I suggest you use git instead? It doesn't require people to me connected to (or even for there to be) a central repository server.
 

ulbador

macrumors 68000
Feb 11, 2010
1,554
0
http://scplugin.tigris.org/

That integrates well with the Finder.

I know it costs, but crossover is amazingly worth it for things exactly such as this. You might also be able to get tortoise running under Wine, which is free but more difficult to set up.
 

balamw

Moderator emeritus
Aug 16, 2005
19,366
979
New England
http://scplugin.tigris.org/

That integrates well with the Finder.
Cool. I'll have to revisit that. Last time I checked the version that was compatible with 10.6 didn't support badging which is one of the best things about Tortoise.

FWIW, Path Finder also has built in SVN capabilities, and if you use a hosted SVN, you might be able to use their www front end as well.

B
 

chrono1081

macrumors G3
Original poster
Jan 26, 2008
8,453
4,156
Isla Nublar
Thanks so much for the suggestions guys. I will look into them and see which one will work best for our group.

I'm dreading this class, especially after one of the students (who obviously cheated their way through college) asked what object oriented programming meant :eek:. We are supposed to be writing a basic game engine (most likely in DirectX) and they don't know what that means! :eek::eek::eek: It's going to be a looong semester...
 

Sander

macrumors 6502a
Apr 24, 2008
520
67
I don't really understand why you'd need the same tool under both Windows and Mac. Let the Windows people in your group use Tortoise, and use something else on your Mac - svn is integrated pretty nicely in Xcode.

I'm probably missing something, though, so if I'm not making sense please ignore me.
 

chrono1081

macrumors G3
Original poster
Jan 26, 2008
8,453
4,156
Isla Nublar
I don't really understand why you'd need the same tool under both Windows and Mac. Let the Windows people in your group use Tortoise, and use something else on your Mac - svn is integrated pretty nicely in Xcode.

I'm probably missing something, though, so if I'm not making sense please ignore me.

Actually I'm not super familiar with SVN software so if I'm getting what your saying would it be possible for me to use my own SVN software that can connect to the repository the people using Tortoise are using and still update our files correctly? If so that would be awesome :D
 

Ara-

macrumors newbie
Apr 24, 2010
4
0
Actually I'm not super familiar with SVN software so if I'm getting what your saying would it be possible for me to use my own SVN software that can connect to the repository the people using Tortoise are using and still update our files correctly? If so that would be awesome :D

Everybody can use their client of choice and there won't be any problems. We used svn in our project group at university with windows, linux, and mac users and all different svn clients. We had no problems at all.
 

chrono1081

macrumors G3
Original poster
Jan 26, 2008
8,453
4,156
Isla Nublar
Everybody can use their client of choice and there won't be any problems. We used svn in our project group at university with windows, linux, and mac users and all different svn clients. We had no problems at all.

That is FANTASTIC news! I'm so pumped!

Kind of...apparently the group things that SVN clients are "too complicated" and that we can build a game engine without them...um...what???
 

chown33

Moderator
Staff member
Aug 9, 2009
10,740
8,416
A sea of green
Kind of...apparently the group things that SVN clients are "too complicated" and that we can build a game engine without them...um...what???

That should be easily dealt with. Present the following questions for discussion and resolution:

1. How do you propose to share multiple files among multiple people?

1a. Theres isn't just sharing files between people working on the same part of the engine, it's the whole project, which needs to be compilable by anyone, using all the latest files published by everyone else. In short, how do you build the project at any given time?

2. How do you plan to coordinate work by multiple people on the same source files?

3. If someone makes a grave mistake, how do you get back to the last point in time that the accursed thing was working?


Remember that the number of connections in a network grows as the square of the number of members in that network. I doubt that the average college student is capable of coordinating a 4-person network of concurrent workers, much less a larger network, using nothing but ad-hoc publishing and sharing mechanisms.

If you can't get the team to work together, then I predict failure for reasons that have little or nothing to do with design or code, but everything to do with basic project resource management (there may well be failures due to code or design, too, but those are usually orthogonal to the resource issues). That kind of failure can be an important learning experience, but if experience can save you from the pain of learning it again (and again (and again)), then I'd say the lesson is already learned. If not, then maybe pain is the best teacher, and you just have to let things fail, after making sure you have a written record of what you proposed and when. This record won't protect you from being accused of undermining or other nefarious project-wrecking, but it's simpler and more effective than sending "I told you so" emails.

Another option is that you can use SVN yourself, for just your parts of the project. If a few others want to join you, you might end up with a convincing minority position that actually gets things done. Leading by example is another lesson worth learning, but again, often learned the hard way.
 

Hansr

macrumors 6502a
Apr 1, 2007
897
1
That is FANTASTIC news! I'm so pumped!

Kind of...apparently the group things that SVN clients are "too complicated" and that we can build a game engine without them...um...what???

Basically you have two options: Appoint yourself project manager and just lead these idiots or talk to your supervisor and get to be alone in a group and build an engine on a smaller scale.

Actually it sounds like they are all idiots so the second option sounds better.
 

balamw

Moderator emeritus
Aug 16, 2005
19,366
979
New England
Another option is that you can use SVN yourself, for just your parts of the project.

Seconded. I don't know how folks really manage without SCM/revision control, even for one-man projects.

chrono1081, were you looking at hosting your own or using a hosting service? The web interface for Beanstalk (http://www.beanstalkapp.com) makes SVN (or Git) a snap to use.

B
 

chrono1081

macrumors G3
Original poster
Jan 26, 2008
8,453
4,156
Isla Nublar
Thanks guys for all of the suggestions :) We have a group meeting at the end of this week and I think I have a pretty good arsenal of why we should use SVN. Its a small group and this would work perfect. I also already set up everything so each member would only need to download the client.

I'm not saying I'm an expert at coding, I am not (I've been a hobbyist doing it on and off for many years but nothing professionally) but its obvious the rest of my group is clueless. I honestly think half of the people I am in class with cheat their way through school to get as far as they have. (One kid said he didn't know what object oriented meant or what pointers were! Another didn't know what developer documentation was! The school definitely covered all of this stuff many times. These are the people I have to make a working module of a game engine with, in DirectX :( )

Anyway to ensure my good grade I'm writing my own version of the module in secret, that way if the group effort fails I can turn in what I would have done and hopefully get full credit. I will gladly help members of the group to get their portions working but I won't hand hold or do their parts, it only hurts everyone.
 

chown33

Moderator
Staff member
Aug 9, 2009
10,740
8,416
A sea of green
(One kid said he didn't know what object oriented meant or what pointers were! Another didn't know what developer documentation was! The school definitely covered all of this stuff many times. These are the people I have to make a working module of a game engine with, in DirectX :( )

If you have any say in it, make sure no sub-team consists entirely of slackers/losers/clue-impaired.
 

SidBala

macrumors 6502a
Jun 27, 2010
533
0
I used ProjectLocker as the SVN host when I had to work on a similar project with a group. It was quite good. But that was like 2 years ago. Something better might be out.

Unfortunately my group members never got the SVN clients working(simply because they were lazy, not because it was hard). Everyone just emailed me their code. I looked at it and ended up coding all of it. The code was just garbage with global variables everywhere.

If nobody has a clue, you should go talk to your instructor or prepare to write the whole thing yourself.

Btw: What module are you going to be writting?

I am very much involved in game engine development. I have written a couple geared towards visualizing physics simulations.
 

chrono1081

macrumors G3
Original poster
Jan 26, 2008
8,453
4,156
Isla Nublar
I used ProjectLocker
If nobody has a clue, you should go talk to your instructor or prepare to write the whole thing yourself.

Btw: What module are you going to be writting?

I am very much involved in game engine development. I have written a couple geared towards visualizing physics simulations.

Thats awesome that you work on engines! Do you like it? I haven't done much in the way of realistic physics with graphics but I plan on it this summer when classes slow down and I have time for side projects.

I'll find out this week which module our group will be writing for sure. I'm kind of hoping for the graphics core since I haven't done as much graphics work in DirectX that I would have liked to. I've never made an engine using a 3D API before (I've made a small engine with SDL before but I'd consider it more of a framework than an engine.)

If I see things are going south quickly I'm going to talk to the professor and see what my options are. I refuse to get a bad grade due to someone else's work. (I have internships to apple for after all and most companies want your grades along with your resume.) I'm 29 with no degree so I need all of the advantages I can get to try and get an internship or job upon graduation. (Although I do have plenty of professional work experience in the IT field, just nothing in development).
 

SidBala

macrumors 6502a
Jun 27, 2010
533
0
Yeah writing game engines is very fun indeed.

Something like a model/texture loader or a scene graph system would be a good size for a team project. The graphics core is quite fun. But I think the real challenge is to write the scene graph engine. It requires a very solid understanding of OOP concepts. And when it starts working, you can make extremely complex scenes with relative ease. This part is really rewarding to see it work.

You can have a look at my work at:

n-Body Gravity Physics

Game engine I made for a course

You are very correct grades and internships. The big 3 as I like to call them - Apple, Microsoft and Google - quite heavily focus on the grades. I guess they receive thousands of applications each summer. One way to weed out candidates is to look at the GPA. They also favor ivy league students more.

So having a strong GPA is very important. You should also try to get in touch with a college recruiter from these companies.
 

bpaluzzi

macrumors 6502a
Sep 2, 2010
918
1
London
You are very correct grades and internships. The big 3 as I like to call them - Apple, Microsoft and Google - quite heavily focus on the grades. I guess they receive thousands of applications each summer. One way to weed out candidates is to look at the GPA. They also favor ivy league students more.

I think it depends on the school. Students from the absolute top-tier comp sci / engineering schools generally have their choice of jobs when they graduate. It's a bit tougher now than when I graduated (2000), but still generally holds.

And my experience has been that the Ivies don't hold as much clout in the tech industry as they do in other fields. The best tech schools have remained pretty consistent over the last 15-20 years: MIT, Stanford, CalTech, Carnegie Mellon, UC Berkeley
 

chrono1081

macrumors G3
Original poster
Jan 26, 2008
8,453
4,156
Isla Nublar
Yeah writing game engines is very fun indeed.

Something like a model/texture loader or a scene graph system would be a good size for a team project. The graphics core is quite fun. But I think the real challenge is to write the scene graph engine. It requires a very solid understanding of OOP concepts. And when it starts working, you can make extremely complex scenes with relative ease. This part is really rewarding to see it work.

You can have a look at my work at:

n-Body Gravity Physics

Game engine I made for a course

You are very correct grades and internships. The big 3 as I like to call them - Apple, Microsoft and Google - quite heavily focus on the grades. I guess they receive thousands of applications each summer. One way to weed out candidates is to look at the GPA. They also favor ivy league students more.

So having a strong GPA is very important. You should also try to get in touch with a college recruiter from these companies.

Your work is awesome! Very cool. I still have a lot to learn 3D programming wise but I really enjoy OpenGL and have been learning a lot of it lately. I'm hoping to eventually land a job in the film industry writing tools for artists. I see many jobs pop up for people with C++, OpenGL, MEL (Maya embedded language) and such.

I think it depends on the school. Students from the absolute top-tier comp sci / engineering schools generally have their choice of jobs when they graduate. It's a bit tougher now than when I graduated (2000), but still generally holds.

And my experience has been that the Ivies don't hold as much clout in the tech industry as they do in other fields. The best tech schools have remained pretty consistent over the last 15-20 years: MIT, Stanford, CalTech, Carnegie Mellon, UC Berkeley

This is where I am going to have a problem. I don't go to a prestigious school by any means (although I do like the school I currently go to much better than Penn State when I went there). Another problem is that I'm taking the schools online option (although they have actual campuses too). I know there is a stigma associated with online school but I wasn't able to give up my job at the time to pursue school full time so online was my only option. Even though my job payed insanely well I wasn't happy at it and it wasn't something I wanted to do the rest of my life so I worked there for the first three years of my online schooling then quit for the last year to just go to school and work on a portfolio.

Of the three colleges I went to I never went to them for learning, I went to them for the piece of paper. I learn much more on my own than in any classroom. Classrooms are important don't get me wrong but some classes tend to move at a snails pace. I'm a very motivated learner and have no problems sitting down reading through math books, programming books, etc. If I want to learn something I will, I don't need anyone to teach me as I will manage to get all of the resources I need. I'm at the point now where school is simply holding me back, eating up my time that I could be using for learning more OpenGL, more OpenCL, etc.

I'm hoping that a nice portfolio with some polished levels, and some small polished games will convince a potential employer to look beyond where I got my degree from and see the work that I can do. I also have plenty of professional experience on my resume, but unfortunately none of it is in development, its all in IT work.
 

turbobass

macrumors 6502
May 25, 2010
294
3
Los Angeles
This is where I am going to have a problem. I don't go to a prestigious school by any means (although I do like the school I currently go to much better than Penn State when I went there).
School doesn't seem so much important as experience (where you get into the whole chicken and egg problem but that's just unavoidable no matter where you start out and end up).

Question for the thread tho -- doesn't the Mac's integrated svn system allow you to connect to a remote repository and make all of the diffs / merge's you need via CLI? That is to say, are you talking about just integrating with the Mac shell for ease of use via the Finder GUI with these clients or are you talking about an additional feature set?

I am just getting into SVN as I am trying to learn Object Oriented software design and Obj C in particulars ... I'd like to get the web dev stuff on the side into some kind of SCM but I have PC / TortoiseSVN for that jazz :)
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.