Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
Zaphod42
Sep 13, 2012

If there's anything more important than my ego around, I want it caught and shot now.

Gearman posted:

They're not just used in animation. That is one of their bigger use cases but it's disingenuous to say that they're only needed for implementing 3D animation from scratch. For example, all of the major VR HMD APIs use quaternions. You're also very likely to run in to them if you're working with AR, such as Google's Tango or Apple's ARKit.

If you're sticking strictly to 2D then you can skip over them and most likely be totally fine. If you're at all interested in the new VR and AR hotness then they're good to know.

Few people are going to be implementing VR from scratch either. So easy to screw that up and :barf:

Just using an existing engine / library that has quaternions math methods to deal with them for you is pretty straightforward.

Shalinor posted:

git is a flaming pile of garbage

Heretic!

Zaphod42 fucked around with this message at 05:01 on Oct 6, 2017

Adbot
ADBOT LOVES YOU

Triarii
Jun 14, 2003

Shalinor posted:

If it makes you feel any better, git is a flaming pile of garbage for other reasons and we abandoned it for Unity's thing. Perforce or MS Teams was our fallback tho if that hadn't worked out.

All source control is garbage. It's science.

What's even wrong with perforce? I've been using it my whole career and I'm pretty happy with it. I thought the main complaint against it was the setup required to run a server and all that.

Chainclaw
Feb 14, 2009

Triarii posted:

What's even wrong with perforce? I've been using it my whole career and I'm pretty happy with it. I thought the main complaint against it was the setup required to run a server and all that.

If you don't have streams setup, there is no way to setup lightweight branches with Perforce. Perforce also has no support for performing a bunch of local commits to work iteratively, quickly. Shelves can be OK at this, but require you to put a lot of effort into managing your outstanding changelists. Perforce also does not play well with offline work. Reconcile offline work kind of works, but not super well. There seems to be many more code review tools that support Git than those that support Perforce. Perforce also can get expensive, you have to pay for the licenses for bigger teams. Perforce also scales in hiccups that can get frustrating, when you hit the capacity of your current server and aren't financially ready to move up a tier. A lot of diligence for setting up a backup system that can actually be used to recover data is necessary for Perforce, where-as if you configure Git correctly, everyone's local copy has a complete backup. For projects with a long history, Perforce can be more beneficial to not have all that bloated history on your machine, instead leaving it up on the central server, but I'm sure Git has some configuration for dealing with this.

I still prefer Perforce for projects that have a lot of team members. File locking is necessary when dealing with large numbers of files that aren't really human merge-able. There are Git plugins for file locking, but they kind of remove a lot of benefits of Git by having a central server managing these locks.

Vino
Aug 11, 2010
I hear some teams use svn and I wonder how viable it is these days as a middle ground between p4 and git.

blastron
Dec 11, 2007

Don't doodle on it!


File locking is basically mandatory when working with assets in UE4. Coming from a couple of years working with git outside the games industry, P4 is pretty garbage for managing source code, but it's basically the only version control that's even remotely reasonable to use for something with as many non-mergeable assets as UE4.

leper khan
Dec 28, 2010
Honest to god thinks Half Life 2 is a bad game. But at least he likes Monster Hunter.
[quote="“Chainclaw”" post="“477105145”"]
If you don’t have streams setup, there is no way to setup lightweight branches with Perforce. Perforce also has no support for performing a bunch of local commits to work iteratively, quickly. Shelves can be OK at this, but require you to put a lot of effort into managing your outstanding changelists. Perforce also does not play well with offline work. Reconcile offline work kind of works, but not super well. There seems to be many more code review tools that support Git than those that support Perforce. Perforce also can get expensive, you have to pay for the licenses for bigger teams. Perforce also scales in hiccups that can get frustrating, when you hit the capacity of your current server and aren’t financially ready to move up a tier. A lot of diligence for setting up a backup system that can actually be used to recover data is necessary for Perforce, where-as if you configure Git correctly, everyone’s local copy has a complete backup. For projects with a long history, Perforce can be more beneficial to not have all that bloated history on your machine, instead leaving it up on the central server, but I’m sure Git has some configuration for dealing with this.

I still prefer Perforce for projects that have a lot of team members. File locking is necessary when dealing with large numbers of files that aren’t really human merge-able. There are Git plugins for file locking, but they kind of remove a lot of benefits of Git by having a central server managing these locks.
[/quote]

Basically all of this. I'm used to creating and switching between a bunch of branches for speculative work. Looks like doing something similar with p4 is going to take a lot more effort (== time == why bother). Really painful to me as it means it's difficult to work on multiple issues at a time or jump to something when someone's hair is on fire and decided to bang their head on my desk.

The only issue I see with it is binaries that are subject to change (eg all art). Pretty sure that's the only reason we're using it. Maybe git-lfs et al aren't good enough, but even then I'd almost prefer using multiple VCS than adopting a worse workflow.

Does anyone have experience with git-p4? I've used git-svn successfully in the past...

Akuma
Sep 11, 2001


Perforce also goes from inexpensive (free) at <=20 instances to very expensive.

Gearman
Dec 6, 2011

Zaphod42 posted:

Few people are going to be implementing VR from scratch either. So easy to screw that up and :barf:

Just using an existing engine / library that has quaternions math methods to deal with them for you is pretty straightforward.


Heretic!

If you do anything with the virtual camera or do anything with hit testing you're likely going to run into them, even using something like Unity. I ran in to them just the other day working on improvements to our ARKit and ARCore apps. I'm not suggesting that anyone be a pro at dealing with them, but they're much closer to the surface in all kinds of dev nowadays, so it's good to at least have a fundamental understanding of what they are.

Hughlander
May 11, 2005

[quote="“blastron”" post="“477105447”"]
File locking is basically mandatory when working with assets in UE4. Coming from a couple of years working with git outside the games industry, P4 is pretty garbage for managing source code, but it’s basically the only version control that’s even remotely reasonable to use for something with as many non-mergeable assets as UE4.
[/quote]

Basically all this. I just swapped back to straight game dev from doing first party middleware. And after 5 years of git I hate having to deal with p4. My workflow is way way multi-tool. So the fact that I have to stop and p4 edit files before I want to vi them in an OS X shell, or have to reconcile here/there/everywhere pisses me off to no end. The best part of it is I brought over one of my guys who's never used p4 and spent their entire professional career on git, and his daily frustration over smashing his head into the wall is amusing.
(Yesterday's: So, I edited this file, then I had to move it so I moved it in finder, and marked the new location for edit, then later I reconciled and the old was marked for delete, I later saw the rename/move option, so how do I clean up the change list without losing my changes so I can do the rename/move? )

EDIT: I do agree that the file locking is so mandatory in many cases. and I really wish git LFS wasn't a flaming piece of poo poo. That is the best thing p4 has going for it. But for doing actual software development / source code management p4 is the worse.

Hughlander fucked around with this message at 13:31 on Oct 6, 2017

SupSuper
Apr 8, 2009

At the Heart of the city is an Alien horror, so vile and so powerful that not even death can claim it.
I think the issue basically comes from trying to make one version control system handle two very different things (code and binary assets). That and engines really need to get away from binary formats for metadata a lot of people will want to change.

Unity supposedly added file locking to Git via their own plugin, but it only works with GitHub because :shrug:

Jan
Feb 27, 2008

The disruptive powers of excessive national fecundity may have played a greater part in bursting the bonds of convention than either the power of ideas or the errors of autocracy.

Hughlander posted:

(Yesterday's: So, I edited this file, then I had to move it so I moved it in finder, and marked the new location for edit, then later I reconciled and the old was marked for delete, I later saw the rename/move option, so how do I clean up the change list without losing my changes so I can do the rename/move? )

If you have a file open for edit, you can just do a move on it and it'll do it automatically.

If you have a file open for add (which is more likely given the description of your steps), there's a flag which you can use to match existing add/delete operations into a "move" (move/delete+ move/add pair). Or you can revert -k to keep your changes and then do the move.

Perforce isn't that hard, really.

E: that said, it's obviously not without its pitfalls, but then, what source control ever is? The main "hassles" I had to deal with all involved merging UE4 updates - we had licensee VPN access, not public git. So integrations involved deleting our upstream UE4 directory, dropping the new version in, then reconciling.

Hurdle #1: Our fearless leader did not initially populate the game depot from a UE4 branch. So any files that were "new" to source control had to be resolved without a base.

Hurdle #2: It turns out that perforce has a mostly undocumented but terribly inconvenient feature in this case: when reconciling, it looks at adds and deletes using fuzzy logic and tries to pair matches into move operations. But UE4 is massive and standardized with that lots of skeleton files end up similar or identical, and unrelated files end up getting matched by this feature. We went through 2-3 integrations before these matches started bubbling to the surface and I could disable the matching functionality before it got worse.

Hurdle #3: Shelves look and feel a lot like "local" branches, down to the resolve terminology when unshelving, but this is treacherous. I once shelved a fully resolved 4.11 integrate we decided not to go forward with, and had to integrate 4.13 after all. So I unshelved 4.11 first before integrating 4.13, hoping that'd spare me from resolving 4.11 again. But any files that were already resolved for an operation (add/delete/edit) but had that operation changed by integrating 4.13 silently failed to resolve because perforce does not support that in a pending changelist... But it does support it while merging a new changelist. In this case, both integrates would have behaved the same in git and this was absolutely a painful mistake on my part.

Jan fucked around with this message at 16:08 on Oct 6, 2017

Hughlander
May 11, 2005

Jan posted:

If you have a file open for edit, you can just do a move on it and it'll do it automatically.

If you have a file open for add (which is more likely given the description of your steps), there's a flag which you can use to match existing add/delete operations into a "move" (move/delete+ move/add pair). Or you can revert -k to keep your changes and then do the move.

Perforce isn't that hard, really.

E: that said, it's obviously not without its pitfalls, but then, what source control ever is? The main "hassles" I had to deal with all involved merging UE4 updates - we had licensee VPN access, not public git. So integrations involved deleting our upstream UE4 directory, dropping the new version in, then reconciling.

Hurdle #1: Our fearless leader did not initially populate the game depot from a UE4 branch. So any files that were "new" to source control had to be resolved without a base.

Hurdle #2: It turns out that perforce has a mostly undocumented but terribly inconvenient feature in this case: when reconciling, it looks at adds and deletes using fuzzy logic and tries to pair matches into move operations. But UE4 is massive and standardized with that lots of skeleton files end up similar or identical, and unrelated files end up getting matched by this feature. We went through 2-3 integrations before these matches started bubbling to the surface and I could disable the matching functionality before it got worse.

Hurdle #3: Shelves look and feel a lot like "local" branches, down to the resolve terminology when unshelving, but this is treacherous. I once shelved a fully resolved 4.11 integrate we decided not to go forward with, and had to integrate 4.13 after all. So I unshelved 4.11 first before integrating 4.13, hoping that'd spare me from resolving 4.11 again. But any files that were already resolved for an operation (add/delete/edit) but had that operation changed by integrating 4.13 silently failed to resolve because perforce does not support that in a pending changelist... But it does support it while merging a new changelist. In this case, both integrates would have behaved the same in git and this was absolutely a painful mistake on my part.

Oh I know this, I started with p4 in 1999. I'm just pointing out the foibles of someone who has worked with git his entire professional careers being thrown into p4 last week. The steps described were exactly what he did:
code:
p4 edit foo
vi foo
mv foo ../../bar/
p4 add foo
<reconcile offline work in p4, accept that p4 marked foo in original location as delete>
<look at default changelist see the delete and add, call me over for help>
The git workflow for the same would be:
code:
vi foo
mv foo ../../bar/
git add foo
Which is why he was thinking that he was fine.

Biggest problem I personally have now is that the typemap was made ridiculously restrictive. Far too many files marked exclusively checked out than should be. Like .gradle is exclusively checked out.

mutata
Mar 1, 2003

As an artist screw git and its weird rear end made up illogical vocabulary forever.

mastermind2004
Sep 14, 2007

leper khan posted:

Basically all of this. I'm used to creating and switching between a bunch of branches for speculative work. Looks like doing something similar with p4 is going to take a lot more effort (== time == why bother). Really painful to me as it means it's difficult to work on multiple issues at a time or jump to something when someone's hair is on fire and decided to bang their head on my desk.

The only issue I see with it is binaries that are subject to change (eg all art). Pretty sure that's the only reason we're using it. Maybe git-lfs et al aren't good enough, but even then I'd almost prefer using multiple VCS than adopting a worse workflow.

Does anyone have experience with git-p4? I've used git-svn successfully in the past...
If you want to make your workflow more complicated for little to no gain, git-p4 is great. If you're enough of a git wizard, you can probably use it better, but you can't actually locally branch with it, at least not without flattening your git history before you try to submit to P4. I've been using it for a year or so, and while it works relatively well, the more complicated flow (since I essentially now have to sync two source control tools any time I update), and the little P4 things that I really like (such as time lapse viewing a file, or just looking at file history easily via copy pasting the path from VS) not working anymore make me not recommend it.

I do still miss P4Win though, RIP running man cursor.

Chernabog
Apr 16, 2007



Game jobs megathread: gitHub or gitGud

baby puzzle
Jun 3, 2011

I'll Sequence your Storm.
There's nothing like watching people fail over and over and over on some gameplay that you thought was going to be easy.

GeeCee
Dec 16, 2004

:scotland::glomp:

"You're going to be...amazing."

baby puzzle posted:

There's nothing like watching people fail over and over and over on some gameplay that you thought was going to be easy.

Don't hate the player, hate the game (designer). :ocelot:

baby puzzle
Jun 3, 2011

I'll Sequence your Storm.

GC_ChrisReeves posted:

Don't hate the player, hate the game (designer). :ocelot:

B-b-but that's me.

blastron
Dec 11, 2007

Don't doodle on it!


If you aren't in a constant state of self-loathing you might not be doing game development right.

Synthbuttrange
May 6, 2007

*sob*

our company is running JIRA, Confluence, HP Application Lifecycle Management and basecamp all at the same time on a per-project basis.

kill me.

Also part of the network just got hosed up by ransomware so none of it works. And neither does the source repository.

*barf*

Zaphod42
Sep 13, 2012

If there's anything more important than my ego around, I want it caught and shot now.
JIRA works pretty well for the most part. Confluence on the other hand is a mess.

mutata
Mar 1, 2003

I hate Confluence. I'm not even sure what else it does aside from act as a doubly confusing wiki but it makes documentation even less likely by being super opaque and overly complicated.

Canine Blues Arooo
Jan 7, 2008

when you think about it...i'm the first girl you ever spent the night with

Grimey Drawer

Zaphod42 posted:

JIRA works pretty well for the most part. Confluence on the other hand is a mess.

It is my experience that JIRA scales poorly. Diddo Testrail. Confluence is even worse. I'm honestly stunned that this is the best the industry can offer because these products are mediocre at best. I swear their existence is being perpetuated by middle management that insists on implementing these toolsets because, 'they are the industry standard!'. It's the worst kind of vicious cycle.

Canine Blues Arooo fucked around with this message at 03:56 on Oct 24, 2017

Shalinor
Jun 10, 2002

Can I buy you a rootbeer?

mutata posted:

I hate Confluence. I'm not even sure what else it does aside from act as a doubly confusing wiki but it makes documentation even less likely by being super opaque and overly complicated.
No, that's just a wiki working as designed.

I will go to my grave yelling about Google Docs/Sheets/etc. This is the right answer for collective documentation, dangit.

Shalinor fucked around with this message at 05:48 on Oct 24, 2017

leper khan
Dec 28, 2010
Honest to god thinks Half Life 2 is a bad game. But at least he likes Monster Hunter.
[quote="“Canine Blues Arooo”" post="“477679826”"]
It is my experience that JIRA scales poorly. Diddo Testrail. Confluence is even worse. I’m honestly stunned that this is the best the industry can offer because these products are mediocre at best. I swear their existence is being perpetuated by middle management that insists on implementing these toolsets because, ‘they are the industry standard!’. It’s the worst kind of vicious cycle.
[/quote]

I'm not going to claim jira is good, but it handles large numbers of projects rather well. Scale isn't typically the problem I have with it.

KRILLIN IN THE NAME
Mar 25, 2006

:ssj:goku i won't do what u tell me:ssj:


This is why you solo dev from home and make tiny games. My entire workspace is various untitled text documents scattered across very organised something called New Folder (13)

Vino
Aug 11, 2010
Never once have I sat at my desk thinking to myself, "Man if only Jira were less confusing, then we would be able to make a game."

Synthbuttrange posted:

Also part of the network just got hosed up by ransomware so none of it works. And neither does the source repository.

Hmm. I would have some serious second thoughts about working at a company where this is possible.

Synthbuttrange
May 6, 2007

bluuuuurh.

Oh well at least it's gotten fixed since last week... mostly. Stuff is still up and down though.

One thing better collaboration tools wont help: A project director that wants different things depending from moment to moment and is confused when you have his older jira entries showing that you've provided exactly what he asked for. :cry:

Cirofren
Jun 13, 2005


Pillbug
Man if you don't like Confluence I kind of understand (but want to know what you use). If you don't like Jira I'd love to know what you recommend.

It might be because I went Jira -> Cherwell -> Jira but Jira makes me pretty happy.

(don't ever use Cherwell it is garbageware for MSPs)

floofyscorp
Feb 12, 2007

Don't use Confluence, love yourself and use Google Docs/Sheets instead.

ChickenWing
Jul 22, 2010

:v:

Any goons at Ubisoft Toronto? Saw a couple positions open that I'm actually somewhat qualified for, so any help with/advice on the process would be spectacular.

Canine Blues Arooo
Jan 7, 2008

when you think about it...i'm the first girl you ever spent the night with

Grimey Drawer

leper khan posted:

I'm not going to claim jira is good, but it handles large numbers of projects rather well. Scale isn't typically the problem I have with it.

Oh, it definitely handles a lot of projects pretty well. It however does not handle big projects very well.

The Glumslinger
Sep 24, 2008

Coach Nagy, you want me to throw to WHAT side of the field?


Hair Elf
I like confluence at work, but we use it as a wiki, and not a place design docs

EgonSpengler
Jun 7, 2000
Forum Veteran
Bug tracking and project management are inherently unfun except to a small group of people who inevitably end up in production, which means most people hate the software and processes attached to those activities. JIRA has a fine interface for writing bugs, but terrible for managing large volumes of them, and non-existent you're-on-your-own reporting tools.

Also, at Blackbird we are hiring a lot. https://blackbirdinteractive.com/jobs/

Canine Blues Arooo
Jan 7, 2008

when you think about it...i'm the first girl you ever spent the night with

Grimey Drawer

EgonSpengler posted:

JIRA has a fine interface for writing bugs, but terrible for managing large volumes of them, and non-existent you're-on-your-own reporting tools.

Maybe my memory is a little busted here, but I think default JIRA's bug writing window is a 600 x 900 screen child window that allows you to see about 4 fields before you have to start to scroll and does not let you interact with it's parent window until you close the child window. That is awful beyond awful and screams to me that the people writing this software aren't dogfooding their product, or they just don't care...

Studio
Jan 15, 2008



Open a new tab on the create button to avoid quick create and get a nice beefy tab. There's uh, there's a lot wrong with JIRA though.

Leif.
Mar 27, 2005

Son of the Defender
Formerly Diplomaticus/SWATJester
All I want from JIRA is an easy way to handle tickets that need to be in more than one team's sprint.

The Angry Brit
Sep 17, 2005

Do I pull G's? no sir, I'm married

Leif. posted:

All I want from JIRA is an easy way to handle tickets that need to be in more than one team's sprint.

If they allowed sub-tasks to appear in a sprint other than the parent, that'd be marvellous. But while aggregating time estimates from sub-tasks to the parents in planning view still proves too difficult for Atlassian to bother with, I can't see them bothering.

baby puzzle
Jun 3, 2011

I'll Sequence your Storm.
I am looking for a game journalist or designer who can do a mock review/in-depth playtest of a PC game. I've already done a bunch of playtesting of the very beginning of the game, but now I want something more in-depth.

Adbot
ADBOT LOVES YOU

EgonSpengler
Jun 7, 2000
Forum Veteran

baby puzzle posted:

I am looking for a game journalist or designer who can do a mock review/in-depth playtest of a PC game. I've already done a bunch of playtesting of the very beginning of the game, but now I want something more in-depth.

They charge money for their services, but this group offers that service: http://www.eedar.com/

We've used them, and they deliver pretty good results.

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply