Welcome, Guest. Please login or register.

Login with username, password and session length

 
Advanced search

1411526 Posts in 69377 Topics- by 58432 Members - Latest Member: Bohdan_Zoshchenko

April 28, 2024, 09:39:50 PM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsDeveloperTechnical (Moderator: ThemsAllTook)The grumpy old programmer room
Pages: 1 ... 205 206 [207] 208 209 ... 295
Print
Author Topic: The grumpy old programmer room  (Read 739001 times)
TheLastBanana
Level 9
****



View Profile WWW
« Reply #4120 on: May 24, 2013, 10:55:02 AM »

Well, ultimately, the problem becomes making sure that the program actually works cross-platform. Much as it's annoying to be forced to download a third-party program, I'd say it's far more annoying to be locked into using a utility with the game that breaks on 5% of your users' systems. At least with something like Joy2Key, it's been around long enough that they've tackled most of those issues.

At this point, I've pretty much given up on getting it working reliably. I'm going to leave the game with keyboard and mouse inputs, and assume that if people want to use a joystick, then they'll be able to set it up themselves with Joy2Key or equivalent. Assuming the game goes anywhere (at this point, I have no idea if it'll take off), then I'll consider putting in the time to get a proper joystick solution in. In the meantime, though, that's weeks of compiling, debugging, and finding testers across multiple platforms that I'm just not willing to commit to.
Logged
George Michaels
Level 0
***


I like big butts and I can not lie


View Profile
« Reply #4121 on: May 28, 2013, 07:03:03 PM »

Dealing with stupid segfaults...

I have an array of pointers for my players (null if the player ID isn't used, a player subclass if it is) but somehow the pointers are being changed without anything writing to the array...
Logged

Yeah, that.
Schrompf
Level 9
****

C++ professional, game dev sparetime


View Profile WWW
« Reply #4122 on: May 29, 2013, 02:36:10 AM »

George, meet Data Breakpoints. Data Breakpoints, you'll now stay with George and do what he says.
Logged

Snake World, multiplayer worm eats stuff and grows DevLog
Christian Knudsen
Level 10
*****



View Profile WWW
« Reply #4123 on: May 29, 2013, 04:45:55 AM »

OpenGL FBOs... Angry
Logged

Laserbrain Studios
Currently working on Hidden Asset (TIGSource DevLog)
kamac
Level 10
*****


Notoriously edits his posts


View Profile
« Reply #4124 on: May 29, 2013, 05:08:26 AM »

OpenGL FBOs... Angry

But what's hard about them?
Logged

Geti
Level 10
*****



View Profile WWW
« Reply #4125 on: May 29, 2013, 05:31:53 AM »

Hardcoding offsets. I swear next game we are building a graphical editor for this shit.
Logged

Christian Knudsen
Level 10
*****



View Profile WWW
« Reply #4126 on: May 29, 2013, 05:44:30 AM »

OpenGL FBOs... Angry

But what's hard about them?

I just seem to always run into trouble when using them. Currently, I'm having a weird problem where an unrelated texture gets messed up when the FBO is bound. I can draw the texture to the screen with no problem before binding the FBO, but when I try to draw it to the FBO, it's seemingly been cleared with the glClear(GL_COLOR_BUFFER_BIT) call I use on the FBO! I first thought that the image bound to the FBO had the same texture name as the unrelated texture, for some reason, but checking their names shows that's not the case.
Logged

Laserbrain Studios
Currently working on Hidden Asset (TIGSource DevLog)
Sir Wolf
Level 0
***


A wolf cub growing up


View Profile
« Reply #4127 on: May 30, 2013, 10:45:16 AM »

Oh man. Apparently I still don't fully understand C# reference and value types.

I operate on a reference type variable1 in one place, and what I think should be a reference to the same thing elsewhere, variable2, remains as it was before the operation. It seems like somewhere along the chain of assignments that I thought would lead to variable1 = variable2, some copying is going on (said chain includes things like passing it as a parameter, adding in and finding from containers, returning as a result of a function, and so on and so forth). That's my best guess for now anyways. I've been at it for way too long now, hopefully I'll spot something obvious after walking away and coming back tomorrow.

Edit: Indeed, fresh air can do wonders. As soon as I stepped outside, I realised I've been basically doing

Code:
variable = new ReferenceType();
second_variable = variable
.
// In a remote corner...
second_variable = third_variable

and then wondering why things don't work, when the assumption everywhere is that variable and second_variable refer to the same thing. If I do understand reference types after all, that's a silly thing to be doing.
« Last Edit: May 30, 2013, 11:27:06 AM by Sir Wolf » Logged

"We don't stop playing because we grow old; we grow old because we stop playing."
-George Bernard Shawn
Kekskiller
Guest
« Reply #4128 on: June 05, 2013, 10:52:59 PM »

I lost code. A LOT code due to windows inability of properly displaying the type of a removable drive. That means my code of a voxel raytracer and a custom string pattern matcher is completely lost. All file recovy tools I tested didn't find anything useful. I should fix my raspi svnserver to prevent stuff like that,
Logged
Geti
Level 10
*****



View Profile WWW
« Reply #4129 on: June 06, 2013, 12:42:01 AM »

>Lost code
>Turn to SVN
 Concerned

Dude, look into distributed version control (git, mercurial). It'll save your ass, its free, theres lots of hosting solutions (github, bitbucket). Don't use SVN. It's bad technology.
Logged

Kekskiller
Guest
« Reply #4130 on: June 06, 2013, 02:41:32 AM »

Yeah but it's better than no source control at all (which's the point of my previous post).
Logged
Geti
Level 10
*****



View Profile WWW
« Reply #4131 on: June 06, 2013, 03:15:36 AM »

Kinda, it's still one point of failure -> requires other backup solutions.
Either way go distributed. I'm sure if you really want you can host a mercurial repo on your raspi.

We lost the entire source history for KAG at one point due to an SVN failure (~250 days in) and swapped to hg at that point to never have that happen again. Luckily we still actually had our local copies.
Logged

InfiniteStateMachine
Level 10
*****



View Profile
« Reply #4132 on: June 06, 2013, 03:35:19 AM »

writing my own OpenGL Es2 math library


I SWEAR my lookat cam is sound. That said it has the weirdest behavior. It has semi-reversed motion and seems to focus on a point behind my target that only gets worse once you pass a certain z-threshold on it.


 Not working at all would be way better.

Anyways, I think I'm going to swallow my pride and use GLM. This project is partially a application for Q-Games and I think I'm hung up on an issue that is mostly irrelevant.
Logged

eigenbom
Level 10
*****


@eigenbom


View Profile WWW
« Reply #4133 on: June 06, 2013, 03:46:41 AM »

I'm a grumpy old programmer. No reason.
Logged

Kekskiller
Guest
« Reply #4134 on: June 06, 2013, 04:23:29 AM »

Kinda, it's still one point of failure -> requires other backup solutions.
Either way go distributed. I'm sure if you really want you can host a mercurial repo on your raspi.

We lost the entire source history for KAG at one point due to an SVN failure (~250 days in) and swapped to hg at that point to never have that happen again. Luckily we still actually had our local copies.

Sheesh, that's a point. Gonna try this before I kill another chunk of work.
Logged
Dacke
Level 10
*****



View Profile
« Reply #4135 on: June 06, 2013, 06:24:35 AM »

You should really use distributed version control for everything you do.

The beautiful thing is that there is almost no overhead. Whenever I start a new project (however small) I just go to the folder and type:
Code:
$ git init

That creates a hidden folder named ".git", which lets you use version-control on anything in that folder and it's subfolders. Then I just add the files I'm working on and commit any changes over time. If I make a mistake or botch a refactoring I can just revert the changes and keep on trucking. All this happens completely locally in that folder.

If the project becomes interesting enough to share or backup, I just push a copy of my local repository to github or bitbucket.
« Last Edit: June 06, 2013, 06:43:17 AM by Dacke » Logged

programming • free software
animal liberation • veganism
anarcho-communism • intersectionality • feminism
Kekskiller
Guest
« Reply #4136 on: June 07, 2013, 01:17:59 AM »

Sounds easier than all the svn hassle. Can I easily merge different local repositories? I have 3 different devices I code on so I could comftably update/commit to SVN.
Logged
Geti
Level 10
*****



View Profile WWW
« Reply #4137 on: June 07, 2013, 02:28:13 AM »

Yes. hg and git are both based around every changeset being a branch and every repository being self sufficient -> require good merge behaviour. You just push to remote repo and pull on the other end for remote development, and you can do the same operations (push and pull) on local repositories with the same commands.
Logged

Dacke
Level 10
*****



View Profile
« Reply #4138 on: June 07, 2013, 02:56:53 AM »

I'm not sure exactly what you meant, Kekskiller? Do you want to merge two different projects or make changes to the same project from different devices?

Merging to different projects is completely possible and quite easy to do, but it's not something you usually do.

Making changes to the same project from different devices is one of the main functions. As it's completely distributed you don't even need a central server. You can share patches between the devices via ftp/ssh/mail/filehosting. (But using a central server is a bit more practical than sending patches back and forth manually).

One example non-standard use:
I have config files and scripts for my linux terminal. I want my terminal to behave the same way on all my computers. So I have a git repository in my home folder which tracks all my config files. I keep a version of the repository on bitbucket, so whenever I install a new computer I just clone the bitbucket repository. That way I automatically get all the config files in the right places. If I change a config file on one computer I can just push the change to bitbucket and pull it to the other computers.
Logged

programming • free software
animal liberation • veganism
anarcho-communism • intersectionality • feminism
Kekskiller
Guest
« Reply #4139 on: June 07, 2013, 05:22:49 AM »

I want to merge projects that slightly differ from device to device. For example, on PC I'm developing graphics code over a longer period of it without touching the rest of the project. On my Pandora I'm working on another part of project and possibly change stuff affecting the graphics code. My SVN solution was to always commit my changes if I'm done (or regular, depends) and merge the changes with other changes I did on another device (can't always split everything into unaffecting bits). The version on the server includes all changes and I safely continue on other devices without always needing to merge but only after a while.

Sometimes I only select a few changes cause for example the graphics code depends on old stuff I have already replaced with new stuff. This always worked fine with SVN and I only had problems when using different SVN versions, trying to merge different SVN checkouts from the same project locally etc.

Yeah, that's it. Some day I did raspi maintenance and since then I forgot to use it. Since I had only one copy of the many changes without committing, I rather assume that it wouldn't have been better using local git repository. Cause, you know, it would've disappeared the same way without regular commits. Hm.

Yes I know my way work with many devices is sort of messy but different things are nicer to do en route than home.
Logged
Pages: 1 ... 205 206 [207] 208 209 ... 295
Print
Jump to:  

Theme orange-lt created by panic