1. Post #1521
    q3k
    Gold Member
    q3k's Avatar
    October 2009
    921 Posts
    Any reason you moved off github for cucumber?
    I just moved my development branches off there, as at that stage I mostly use a remote to be able ot share the code between many machines, and not as a publishing / collaboration mechanism. I will continue to push major updates to github, just not as often.
    Reply With Quote Edit / Delete Linux Poland Show Events Friendly Friendly x 1 (list)

  2. Post #1522
    Follow me on GitHub!
    Ziks's Avatar
    June 2011
    1,983 Posts
    Garry, if you read this, could we have a GitHub account link added to user profiles on facepunch (like steam account, deviant art, xbl etc)?

    Edited:

    I mean if something as small and obscure as Google+ has one, you may as well add GitHub
    Reply With Quote Edit / Delete Windows 7 United Kingdom Show Events Agree Agree x 27Friendly Friendly x 1 (list)

  3. Post #1523
    Gold Member

    July 2006
    1,951 Posts
    Why not BitBucket as well?
    Reply With Quote Edit / Delete Linux Finland Show Events Agree Agree x 11Disagree Disagree x 4Friendly Friendly x 1 (list)

  4. Post #1524
    Map in a box's Avatar
    July 2009
    7,078 Posts
    No offense to Ziks, but I had a look at his code and I really wouldn't if I were you.
    Usual suggestions: one two three four?
    What do you mean by that? :saddowns:

    Edited:

    GitHub, BitBucket, and maybe google code.
    Reply With Quote Edit / Delete Windows XP United States Show Events Agree Agree x 9Friendly Friendly x 1 (list)

  5. Post #1525
    Gold Member
    Darwin226's Avatar
    January 2009
    4,037 Posts
    Could someone give a few convincing arguments why I should use a version control?

    I have used git before (which was a pain in the ass mostly) and Hg (which was more pleasant) but I can't say I see the benefits.

    Yes I could potentially lose code but all the important stuff is on dropbox (requires no effort on my part).
    Also, I was never in a situation where I desperately needed to salvage code I deleted. It just doesn't happen, and if I actually need something I deleted I know I did it with a reason and write a new, better version.

    Is there something obvious that I'm missing? Because right now it only seems like one extra thing to keep in mind (committing and pushing) and extra work to do.


    Maybe I just haven't worked on a large group project before but I could definitely see how that could be done without too much trouble without Git, SVN or Hg
    Reply With Quote Edit / Delete Windows 7 Croatia Show Events Useful Useful x 1Disagree Disagree x 1Dumb Dumb x 1Friendly Friendly x 1 (list)

  6. Post #1526
    Team Hamster
    Mordi's Avatar
    January 2012
    312 Posts
    Your game is reminiscent of Thunder Brigade.
    I thought of Fury3 when I first saw his screens. http://www.youtube.com/watch?v=6_8tSpXLuK8
    Reply With Quote Edit / Delete Windows 7 Norway Show Events Friendly Friendly x 1 (list)

  7. Post #1527
    q3k
    Gold Member
    q3k's Avatar
    October 2009
    921 Posts
    Maybe I just haven't worked on a large group project before
    Yes.

    Being able to work independantely on a large code base with multiple people involved at the same time, without having to resort to sending out emails telling people to not touch stuff is hell without a (D)VCS. A (D)VCS lets you manage development branches more easily, lets you quickly revert changes, merge different versions effortlessly, maintain multiple versions and releases at once while letting you quickly move code commits between them...
    Reply With Quote Edit / Delete Linux Poland Show Events Friendly Friendly x 1 (list)

  8. Post #1528
    Gold Member
    Jookia's Avatar
    July 2007
    6,768 Posts
    Could someone give a few convincing arguments why I should use a version control?

    I have used git before (which was a pain in the ass mostly) and Hg (which was more pleasant) but I can't say I see the benefits.

    Yes I could potentially lose code but all the important stuff is on dropbox (requires no effort on my part).
    Also, I was never in a situation where I desperately needed to salvage code I deleted. It just doesn't happen, and if I actually need something I deleted I know I did it with a reason and write a new, better version.

    Is there something obvious that I'm missing? Because right now it only seems like one extra thing to keep in mind (committing and pushing) and extra work to do.


    Maybe I just haven't worked on a large group project before but I could definitely see how that could be done without too much trouble without Git, SVN or Hg
    Branches. Being able to find out when a bug was introduced between commits. Teamwork. Revision control. Backups.

    As for not losing code, I hope you have a great backup strategy.
    Reply With Quote Edit / Delete Linux Australia Show Events Agree Agree x 1Friendly Friendly x 1 (list)

  9. Post #1529
    calzoneman's Avatar
    February 2008
    460 Posts
    Maybe I just haven't worked on a large group project before but I could definitely see how that could be done without too much trouble without Git, SVN or Hg
    You don't even need a large team to see the benefits of a version control system. I've been using Git for small team projects (~3 people on a school project for example) and it's very nice to be able to play with the code in a separate branch so you don't break anything in the process, merging the branch back if your experiments work. It also helps prevent people from overwriting each others' code because version control software is smarter than a blind copy-and-replace.
    Reply With Quote Edit / Delete Linux United States Show Events Agree Agree x 2 (list)

  10. Post #1530
    Gold Member
    Darwin226's Avatar
    January 2009
    4,037 Posts
    So far, none of those are really sticking to me.
    Branches? Revision? Meh...

    If I'm not working with other people the most convincing reason to use VCS would be to feel more professional TBH.
    Reply With Quote Edit / Delete Windows 7 Croatia Show Events Dumb Dumb x 1 (list)

  11. Post #1531
    open.gl
    Overv's Avatar
    February 2007
    7,431 Posts
    So far, none of those are really sticking to me.
    Branches? Revision? Meh...

    If I'm not working with other people the most convincing reason to use VCS would be to feel more professional TBH.
    Have you never had a moment where you wanted to implement something new, but it would require rewriting a bunch of stuff? Because that's the kind of moment where a version control system really comes in handy: to roll back.
    Reply With Quote Edit / Delete Windows 7 Netherlands Show Events Agree Agree x 5 (list)

  12. Post #1532
    Gold Member
    BlkDucky's Avatar
    May 2008
    6,477 Posts
    A better question would be: why would you not use source control? It's not like it's difficult to set up or has any disadvantages.
    Reply With Quote Edit / Delete Windows Vista United Kingdom Show Events Agree Agree x 6Disagree Disagree x 1 (list)

  13. Post #1533
    Gold Member
    Darwin226's Avatar
    January 2009
    4,037 Posts
    Have you never had a moment where you wanted to implement something new, but it would require rewriting a bunch of stuff? Because that's the kind of moment where a version control system really comes in handy: to roll back.
    Nope.
    When I want to implement something new. I implement something new. If I need to rewrite, I rewrite.
    None of these things really bother me.

    Edited:

    A better question would be: why would you not use source control? It's not like it's difficult to set up or has any disadvantages.
    Because Git is incredibly confusing for me and I need a GUI to actually use it (because fuck terminals).
    And even with a GUI it IS complicated to setup and requires me to do regular commits which are a bother.
    Reply With Quote Edit / Delete Windows 7 Croatia Show Events Disagree Disagree x 11Dumb Dumb x 6Agree Agree x 2Friendly Friendly x 1 (list)

  14. Post #1534
    Richy19's Avatar
    May 2010
    5,368 Posts
    Nope.
    When I want to implement something new. I implement something new. If I need to rewrite, I rewrite.
    None of these things really bother me.
    Put it this way, you create some algorithm that does the job you wanted but its slow or something so you want to try something else.
    You can commit it and then test out other stuff, if the other stuff works then you can comit the new stuff. f it doesnt then you just revert to the working algorithm.

    Because Git is incredibly confusing for me and I need a GUI to actually use it (because fuck terminals).
    And even with a GUI it IS complicated to setup and requires me to do regular commits which are a bother.
    If anything a GUI makes git much harder to use, honestly using git via the command promt/terminal is way easy.
    you simpley git add -A and then git commit -m "Some message"
    Reply With Quote Edit / Delete Linux United Kingdom Show Events Agree Agree x 6Dumb Dumb x 2 (list)

  15. Post #1535
    Gold Member
    BlkDucky's Avatar
    May 2008
    6,477 Posts
    Nope.
    When I want to implement something new. I implement something new. If I need to rewrite, I rewrite.
    None of these things really bother me.

    Edited:



    Because Git is incredibly confusing for me and I need a GUI to actually use it (because fuck terminals).
    And even with a GUI it IS complicated to setup and requires me to do regular commits which are a bother.
    I use SVN because I'm an idiot, but the "GUI way" is literally: right click -> commit -> type commit notes -> okay.
    Reply With Quote Edit / Delete Windows Vista United Kingdom Show Events Agree Agree x 11 (list)

  16. Post #1536
    Team Hamster
    jalb's Avatar
    December 2009
    556 Posts
    Because Git is incredibly confusing for me and I need a GUI to actually use it (because fuck terminals).
    And even with a GUI it IS complicated to setup and requires me to do regular commits which are a bother.
    I've never had any luck with Git GUIs. The command line is incredibly simple as Richy19 pointed out. Personally I prefer SVN, myself, and SVN GUIs have always been more cooperative and straight forward for me.

    I don't use version control for branches, mostly just for going back if I fuck something up, and of course for working on collaborative projects. I only use Git for open source projects because of how nice Github is.

    The only disadvantage to using version control is the time it takes to setup (which for git can be a bit of a hassle sometimes if you're new to it) and having to do regular commits. Once it's setup it becomes second nature to commit after adding something big, or once you're done programming for a while.

    ... plus when the time comes where you need to use version control you'll be familiar with it.
    Reply With Quote Edit / Delete Windows 7 United States Show Events

  17. Post #1537
    Dotmister's Avatar
    May 2008
    898 Posts
    Could someone give a few convincing arguments why I should use a version control?

    I have used git before (which was a pain in the ass mostly) and Hg (which was more pleasant) but I can't say I see the benefits.

    Yes I could potentially lose code but all the important stuff is on dropbox (requires no effort on my part).
    Also, I was never in a situation where I desperately needed to salvage code I deleted. It just doesn't happen, and if I actually need something I deleted I know I did it with a reason and write a new, better version.

    Is there something obvious that I'm missing? Because right now it only seems like one extra thing to keep in mind (committing and pushing) and extra work to do.


    Maybe I just haven't worked on a large group project before but I could definitely see how that could be done without too much trouble without Git, SVN or Hg
    If you actually release anything, then version control is necessary.

    As soon as you release a version, you'll want to tag that commit as version 1.0.0 or something. This means that you can patch an important security bug even while you're halfway through writing version 2.0.0.

    Some kind of versioning system will also most likely form a integral part of any testing/deployment procedures.
    Reply With Quote Edit / Delete Windows 7 United Kingdom Show Events Informative Informative x 1Agree Agree x 1 (list)

  18. Post #1538
    Gold Member
    Jookia's Avatar
    July 2007
    6,768 Posts
    You could go the Project Zomboid way and not use VCS.
    Reply With Quote Edit / Delete Linux Australia Show Events Funny Funny x 15 (list)

  19. Post #1539
    Gold Member
    Darwin226's Avatar
    January 2009
    4,037 Posts
    If you actually release anything, then version control is necessary.

    As soon as you release a version, you'll want to tag that commit as version 1.0.0 or something. This means that you can patch an important security bug even while you're halfway through writing version 2.0.0.

    Some kind of versioning system will also most likely form a integral part of any testing/deployment procedures.
    Never thought about that. Thanks.

    As for others, here's a counter question: Have you never closed the IDE, being done with coding for today, and gone to commit, and then realize that you have no idea what to put as a commit message?

    It's a minor thing but it bothers me so damn much.

    If I had something that would do it for me it would be another story.

    Edited:

    You could go the Project Zomboid way and not use VCS.
    I thought they did use one. Just not on a remote depo.
    Reply With Quote Edit / Delete Windows 7 Croatia Show Events Dumb Dumb x 1 (list)

  20. Post #1540
    Richy19's Avatar
    May 2010
    5,368 Posts
    Never thought about that. Thanks.

    As for others, here's a counter question: Have you never closed the IDE, being done with coding for today, and gone to commit, and then realize that you have no idea what to put as a commit message?

    It's a minor thing but it bothers me so damn much.

    If I had something that would do it for me it would be another story.
    Usually i would just call it security commit -date-
    Reply With Quote Edit / Delete Linux United Kingdom Show Events Funny Funny x 2Dumb Dumb x 1 (list)

  21. Post #1541
    Team Hamster
    jalb's Avatar
    December 2009
    556 Posts
    As for others, here's a counter question: Have you never closed the IDE, being done with coding for today, and gone to commit, and then realize that you have no idea what to put as a commit message?
    "Changed stuff," "misc changes", "added math and stuff," take your pick
    Reply With Quote Edit / Delete Windows 7 United States Show Events Funny Funny x 7Agree Agree x 1 (list)

  22. Post #1542
    Dotmister's Avatar
    May 2008
    898 Posts
    Never thought about that. Thanks.

    As for others, here's a counter question: Have you never closed the IDE, being done with coding for today, and gone to commit, and then realize that you have no idea what to put as a commit message?

    It's a minor thing but it bothers me so damn much.

    If I had something that would do it for me it would be another story.
    Generally commits should be per-feature not per-fixed time interval. You shouldn't commit at the end of the day unless you've fixed a bug or completed a feature or something similar. Since you'll commit when you finish a certain feature or part of the program you won't have this problem.
    Reply With Quote Edit / Delete Windows 7 United Kingdom Show Events Agree Agree x 6 (list)

  23. Post #1543
    Gold Member
    HeroicPillow's Avatar
    July 2009
    4,485 Posts
    The only disadvantage to using version control is the time it takes to setup (which for git can be a bit of a hassle sometimes if you're new to it) and having to do regular commits. Once it's setup it becomes second nature to commit after adding something big, or once you're done programming for a while.
    Personally, I don't think there was ever a time that I found git to be hard/long to set up. You just head into your folder, open up a bash terminal, type in "git init", and you've set up a repository. From them you can track changes fairly easily, or even push it to a remote location if desired. msysgit's gui is also pretty easy to use, and I use it interchangeably with the terminal on windows. I also have git extensions installed within visual studio for when i'm developing on windows, so I can easily commit something whenever I make a minor change.

    Personally, i'm very picky about how I develop something. If something is using Cmake, I will convert the project by hand over to premake simply because I prefer that far more. Hell, I sometimes even convert SVN repositories into local git repositories simply because I don't like SVN. I have found what works for me as a developer, and I'm always looking for ways to do everything more efficiently. Even though i'm pretty much always working alone on all of my projects I still do all of this because it's what I feel most comfortable doing. When I do work with someone else I will still use whatever source management system they want me to, but i'll still maintain a separate git repository on my machine simply because it's so easy to set up.

    As for others, here's a counter question: Have you never closed the IDE, being done with coding for today, and gone to commit, and then realize that you have no idea what to put as a commit message?
    Some of my commit messages are simply "I changed some things and fixed some stuff, mostly in 'audio.h'". Just say what you worked on, or possibly, why you worked on it. "I changed these files to use a different algorithm because I believe it is faster this way"
    Reply With Quote Edit / Delete Windows 7 United States Show Events

  24. Post #1544
    q3k
    Gold Member
    q3k's Avatar
    October 2009
    921 Posts
    As for others, here's a counter question: Have you never closed the IDE, being done with coding for today, and gone to commit, and then realize that you have no idea what to put as a commit message?
    One part of the philosophy of using Git is 'commit early, commit often'. So don't commit per coding session, but per feature implemented or bug fixed, or even parts of that (depends on the size of the feature implemented or bug fixed). Another added bonus is that small code diffs will mean a higher chance of Git doing an automerge if some day you want to merge two branches together.

    Additional reading
    Reply With Quote Edit / Delete Linux Poland Show Events Agree Agree x 1 (list)

  25. Post #1545
    Blue Member
    Dennab
    June 2009
    1,031 Posts
    pls stop talking about git and post pictures
    Reply With Quote Edit / Delete Windows Vista United Kingdom Show Events Dumb Dumb x 31Funny Funny x 2Disagree Disagree x 1 (list)

  26. Post #1546
    Gold Member
    BlkDucky's Avatar
    May 2008
    6,477 Posts
    pls stop talking about git and post pictures
    this thread is basically programming general discussion. It's not here for your entertainment.
    Reply With Quote Edit / Delete Windows Vista United Kingdom Show Events Agree Agree x 16Disagree Disagree x 4 (list)

  27. Post #1547
    Team Hamster
    jalb's Avatar
    December 2009
    556 Posts
    std::map<std::string, std::pair<std::pair<void*, unsigned int>, __int64>> resources;
    *gulp*

    std::map<std::string, void*> pointers;
    std::map<std::string, unsigned int> sizes;
    std::map<std::string, __int64> timeStamps;
    Perhaps this is a better approach?
    Reply With Quote Edit / Delete Windows 7 United States Show Events Disagree Disagree x 2Friendly Friendly x 1 (list)

  28. Post #1548
    Follow me on github!
    benjojo's Avatar
    January 2009
    2,611 Posts
    pls stop talking about git and post pictures
    Why not post some content of yours then?
    Reply With Quote Edit / Delete Windows 7 United Kingdom Show Events Zing Zing x 16 (list)

  29. Post #1549
    Gold Member
    Night-Eagle's Avatar
    January 2005
    815 Posts
    std::map<std::string, std::pair<std::pair<void*, unsigned int>, __int64>> resources;
    *gulp*

    std::map<std::string, void*> pointers;
    std::map<std::string, unsigned int> sizes;
    std::map<std::string, __int64> timeStamps;
    Perhaps this is a better approach?
    Perhaps you might want something like
    #include <stdint.h>
    struct FarmData
    {
    void *pointer;
    uint32_t size;
    uint64_t timeStamp;
    };
    
    typedef std::map<std::string, FarmData> FarmDataMap;
    

    Still, void pointers...make sure you have a good reason to use them. Not sure what is important about int size to you, either.

    You may or may not also want to use a class for the time stamp data. Could save you loads of trouble depending on what you want to do with it.
    Reply With Quote Edit / Delete Windows 7 Show Events Agree Agree x 4Useful Useful x 1 (list)

  30. Post #1550
    T3hGamerDK's Avatar
    January 2011
    2,551 Posts
    std::map<std::string, std::pair<std::pair<void*, unsigned int>, __int64>> resources;
    *gulp*

    std::map<std::string, void*> pointers;
    std::map<std::string, unsigned int> sizes;
    std::map<std::string, __int64> timeStamps;
    Perhaps this is a better approach?
    If you're going to use that much from the standard namespace, why not import it?
    Reply With Quote Edit / Delete Mac Denmark Show Events Agree Agree x 4Disagree Disagree x 1 (list)

  31. Post #1551
    open.gl
    Overv's Avatar
    February 2007
    7,431 Posts
    The only disadvantage to using version control is the time it takes to setup (which for git can be a bit of a hassle sometimes if you're new to it) and having to do regular commits.
    Code:
    git init
    Done.

    The SSH setup and username/email configuration you need to do when you've just installed git takes 2 minutes max.

    As for others, here's a counter question: Have you never closed the IDE, being done with coding for today, and gone to commit, and then realize that you have no idea what to put as a commit message?
    The changelog is there for a reason.
    Reply With Quote Edit / Delete Windows 7 Netherlands Show Events Agree Agree x 3 (list)

  32. Post #1552
    Team Hamster
    jalb's Avatar
    December 2009
    556 Posts
    Perhaps you might want something like
    #include <stdint.h>
    struct FarmData
    {
    void *pointer;
    uint32_t size;
    uint64_t timeStamp;
    };
    
    typedef std::map<std::string, FarmData> FarmDataMap;
    

    Still, void pointers...make sure you have a good reason to use them. Not sure what is important about int size to you, either.
    I suppose I could use a struct, not sure why I didn't think of that earlier. I'm writing a resource manager to sync up multiple threads. I can point to any data type (hence void*) and I need to know how large they are for memcpy.


    If you're going to use that much from the standard namespace, why not import it?
    It's a template class so it's in the header. I hate having "using" in .h to force other files to do the same.

    Code:
    git init
    Done.
    The "difficult" part comes with syncing up to a remote. Note that I don't actually find it difficult anymore, but it was my first time around.
    Reply With Quote Edit / Delete Windows 7 United States Show Events

  33. Post #1553
    Gold Member
    Night-Eagle's Avatar
    January 2005
    815 Posts
    If you're going to use that much from the standard namespace, why not import it?
    There are probably a few good reasons - I'll add that to my list of things to study.
    Reply With Quote Edit / Delete Windows 7 Show Events Agree Agree x 3 (list)

  34. Post #1554
    EGN Founder
    CountNoobula's Avatar
    May 2010
    505 Posts
    Box of poop ahah... but reading this it almost seem like you're mad at the dev for trying to sell his product. how can you talk so low about the project of someone else? ... now for the rest of the answer I will quote Lexic since he was a little more constructive.



    You're talking at the first person... why? Nothing say that the way you code is the same as everyone else ... Alright, you don't need the collaborative option, but some already existing big IDE offer this option because some people really need it. Also you don't HAVE to buy it... but you should give it a chance, have you even tried it? Now I agree with you about the GUI, it's not the best out there YET but just give it time, just look at how awful the GUI of Windows 2000 was, does that make it a bad OS for it's time... the answer is no. Seriously it worries me to see a dev being so harsh about the project of someone else, especially when the project itself is really promising. You should really ask yourself this question, Does all the arguments you listed above really are flaws or are they just features I don't like and that I would personally deactivate if I was using the IDE... lots of feature is better then not enough

    PS: Also should I really remind you how easily a GUI can be fixed?
    PS2: Also to CountNoobula, judging by the reaction of the users, you should really rework that GUI. Try looking into a style that resemble GWEN, Garry really is a genius with GUI.
    Thanks for the support, we are busy creating alternative themes to demonstrate, we are also updating the main theme as we go along, although it will probably stay along its current scheme
    Reply With Quote Edit / Delete Windows 7 South Africa Show Events

  35. Post #1555
    Follow me on GitHub!
    Ziks's Avatar
    June 2011
    1,983 Posts
    I've got the whole of San Andreas streaming now with automatic LOD model pop-in, but since I started handing textures directly to OpenGL (without my decompression algorithm) everything looks too dark and most alpha masks don't work.

    I'll try and get a video of me flying around SA when that's fixed.

    Edited:

    Reply With Quote Edit / Delete Windows 7 United Kingdom Show Events Programming King Programming King x 20 (list)

  36. Post #1556
    Gold Member
    Night-Eagle's Avatar
    January 2005
    815 Posts
    everything looks too dark
    Gamma correction applied???
    Reply With Quote Edit / Delete Windows 7 Show Events

  37. Post #1557
    Follow me on GitHub!
    Ziks's Avatar
    June 2011
    1,983 Posts
    Gamma correction applied???
    Can I do that on a per-texture basis? Some textures are correct. Also I don't think that will get back the lost alpha values.
    Reply With Quote Edit / Delete Windows 7 United Kingdom Show Events

  38. Post #1558
    Gold Member
    Night-Eagle's Avatar
    January 2005
    815 Posts
    Ziks:
    Sounds dirty!

    GTA: SA did do some fun stuff with lighting, perhaps they meant to apply gamma correction in the shader. Not sure if you're aware about this topic, but at least some of the readership will find this interesting:
    Linear-Space Lighting (i.e. Gamma)

    As for the alpha values, I have not a clue.
    Reply With Quote Edit / Delete Windows 7 Show Events

  39. Post #1559
    Philly c's Avatar
    February 2008
    551 Posts
    They're probably srgb textures. Instead of PixelInternalFormat.CompressedRgbaS3tcDxt1Ext use PixelInternalFormat.CompressedSrgbaS3tcDxt1Ext etc (notice the s before rgb). I don't know about opentk but that's gotta be the correct enum.

    Edited:

    Actually I wasn't paying close enough attention and it seems you set all but one to srgb already so you probably want to use an srgb framebuffer. Think I finally edited this so it's correct.
    Reply With Quote Edit / Delete Windows 7 United Kingdom Show Events Agree Agree x 1 (list)

  40. Post #1560
    Blue Member
    Dennab
    June 2009
    1,031 Posts
    Why not post some content of yours then?
    C# + XNA TANK RTS
    Reply With Quote Edit / Delete Windows Vista United Kingdom Show Events Programming King Programming King x 2Informative Informative x 1Dumb Dumb x 1 (list)