00:13.36 | The_Noah | with my version, do i need to worry about the "Making a Release" section in DEVINFO? or do y'all handle that? |
01:19.06 | *** join/#bzflag infobot (ibot@rikers.org) |
01:19.06 | *** topic/#bzflag is https://BZFlag.org || http://ohloh.net/p/bzflag || https://bzflag.org/help || Channel Logs: http://infobot.rikers.org/%23bzflag/ || 2.4.12 released! https://forums.bzflag.org/viewtopic.php?f=62&t=19720 |
01:19.06 | *** mode/#bzflag [+v infobot] by ChanServ |
01:28.39 | blast007 | JeffM: nah, 480P is SD |
01:28.55 | blast007 | HD is 720p, FullHD is 1080p |
01:28.59 | blast007 | marketing |
01:29.14 | The_Noah | blast: with my version, do i need to worry about the "Making a Release" section in DEVINFO and the version stuff? or do y'all handle that? |
01:29.16 | blast007 | The_Noah: we'd be making the release |
01:29.26 | The_Noah | ok |
01:29.33 | The_Noah | does BZFlag support true 4K? |
01:31.06 | blast007 | is there a fake 4K? |
01:31.28 | blast007 | the game would run at 8K |
01:31.38 | The_Noah | what i mean is, does it drive in 4K, or 1080p then scale up to 4K |
01:31.43 | blast007 | no |
01:31.52 | blast007 | we're not a crappy console game :) |
01:31.57 | The_Noah | yay! |
01:32.18 | The_Noah | when i get a 4K mon, i can finally have BZFlag look really good! (with my 4K textures :P) |
01:32.19 | blast007 | I don't think PC games do that kind of stuff, generally... maybe if they're a crappy console port to PC |
01:33.54 | The_Noah | does Tim Riker still dev? |
01:36.23 | allejo | nope |
01:37.09 | blast007 | not in the context of BZ |
01:38.45 | The_Noah | ok |
01:53.46 | JeffM | I doubt that intel onboard can run a 4K display |
01:55.47 | blast007 | it sounded like he has another Windows PC |
01:56.32 | JeffM | Ahh |
01:56.50 | The_Noah | yep! well, its not mine, but i can use it! and it has a real graphics card |
01:57.17 | JeffM | Double buffers for that size is like 64 megs alone |
01:58.10 | The_Noah | cool! |
01:58.26 | JeffM | And I think bz would double that for the stencil buffers |
02:00.15 | blast007 | sounds like the GM45 maxes out at 2048 x 1536 |
02:01.40 | The_Noah | i have 1200x800 i think |
02:01.40 | JeffM | And probably cries while doing it |
02:01.45 | The_Noah | lawl |
02:01.47 | JeffM | Itâs all dram too |
02:02.26 | blast007 | it can drive that at 75Hz, or 1080p at 100Hz. |
02:21.54 | blast007 | hmm.. might even be able to do 2560x1600 over a digital connection |
02:24.21 | The_Noah | what command do i use to update a repository with git? |
02:28.34 | The_Noah | nevermind, i got it. im learning Github before i work on BZ |
02:51.21 | The_Noah | how do i push out an update to my branch in my fork? |
02:52.33 | blast007 | have you already committed the code to your local copy? |
02:52.44 | blast007 | if so, you can 'git push' your changes |
02:55.30 | The_Noah | thanks |
03:03.09 | The_Noah | when i build BZ to test it, is there a why to clean it so then the compiled stuff doesnt get uploaded, or do i just copy everything to a different folder and build it there? |
03:03.49 | blast007 | the compile stuff should already be ignored via .gitignore |
03:04.03 | blast007 | you can verify what you're adding when you commit stuff |
03:04.54 | The_Noah | ok, thanks |
03:05.39 | The_Noah | is it fine that im working on a FAT32 system and not EXT4? |
03:06.09 | blast007 | on a linux system? |
03:06.25 | blast007 | you're... you're using your flash drive, aren't you? :P |
03:06.27 | The_Noah | im on Linux, put working on a flash drive |
03:06.36 | The_Noah | how did you know ?? |
03:06.37 | blast007 | I would recommend not doing that |
03:07.01 | The_Noah | ok, will Git care that i have it in multible locations? |
03:07.35 | blast007 | I'd do a clean clone on an ext4 |
03:08.01 | The_Noah | but does Git care that i still have it on my flash drive? |
03:08.15 | blast007 | no |
03:08.28 | The_Noah | is there a way to remove a commit? |
03:10.20 | The_Noah | oops, im in a BIG mess, now the files are not EXT4 formatted, no x! |
03:11.00 | blast007 | have you already pushed that commit? |
03:12.14 | The_Noah | yes |
03:12.16 | The_Noah | i deleted it |
03:12.23 | The_Noah | should i clone master or 2.4? |
03:13.01 | blast007 | 2.4 |
03:13.34 | The_Noah | ok |
03:15.10 | The_Noah | i should only git commit -m "message" when im done, correct? |
03:15.31 | blast007 | define done |
03:15.54 | The_Noah | with what im working on, for example, fixing a bug |
03:16.03 | The_Noah | and right now, the new UI |
03:16.27 | blast007 | sure |
03:16.59 | The_Noah | ok |
03:21.17 | The_Noah | git push origin 2.6 - i dont see my updated file in the fork |
03:24.19 | blast007 | 2.4 you mean? |
03:24.29 | The_Noah | my branch is called 2.6 |
03:24.38 | blast007 | why? |
03:24.48 | The_Noah | because i just decied to do that |
03:24.57 | blast007 | we aren't going to merge that |
03:25.03 | The_Noah | oh |
03:25.14 | blast007 | if you wanted to base it on 2.5 code, you should have used master |
03:25.15 | The_Noah | it has to be called 2.4 for you to merge that? |
03:25.23 | The_Noah | i asked you! |
03:25.49 | blast007 | you asked if you should use master or 2.4, with no context beyond that |
03:25.58 | blast007 | I assumed you wanted to PLAY with other people and test it |
03:26.30 | The_Noah | i want it to be in the next release, and with prev descussion, allejo it would be 2.6 |
03:26.45 | The_Noah | said* |
03:26.57 | blast007 | then you should have mentioned that :) |
03:27.12 | The_Noah | im sorry |
03:27.13 | blast007 | master is the code that will become 2.6 when released |
03:27.33 | The_Noah | ok, so should i change master, or create a branch of master and edit that? |
03:27.43 | blast007 | master is already a branch |
03:27.49 | blast007 | you checkout master |
03:27.57 | The_Noah | so i should edit master? |
03:28.03 | blast007 | yes |
03:28.07 | The_Noah | ok |
03:28.21 | blast007 | though if you already created a 2.6 branch and commited stuff, you should probably just start your repo over :) |
03:28.37 | blast007 | if you haven't pushed yet, just make a new clone |
03:28.53 | The_Noah | ok |
03:29.02 | The_Noah | 4th time ive had to restart :D |
03:29.13 | blast007 | welcome to Git |
03:29.20 | The_Noah | yay! |
03:31.19 | The_Noah | when do you think 2.6 will come out? |
03:33.06 | blast007 | no idea |
03:33.52 | *** join/#bzflag galileo (~QUJAAAAAA@d216-108-171-73.nt.northwestel.net) |
03:34.15 | The_Noah | i dont see my new code in my fork when i push it...... |
03:35.25 | The_Noah | i have to go, ill do some more testing and try to find out whats wrong |
03:35.54 | blast007 | did you commit the code? |
03:36.13 | blast007 | and you have to add files (which stages the changes) before you commit |
03:36.33 | blast007 | there are plenty of graphical interfaces for Git too |
03:36.38 | The_Noah | no, i didnt commit |
03:36.47 | The_Noah | i just pushed |
03:36.54 | blast007 | then it won't push anything |
03:37.01 | The_Noah | ok, bye |
03:37.03 | blast007 | the push will push you commited changesets |
03:37.04 | The_Noah | good night |
03:37.06 | blast007 | cya |
11:14.27 | *** join/#bzflag bboles (~quassel@2607:fcd0:100:8300:1c::a3ed) |
16:43.01 | *** join/#bzflag The_Noah (6163fde4@gateway/web/freenode/ip.97.99.253.228) |
17:02.52 | *** join/#bzflag infobot (ibot@rikers.org) |
17:02.52 | *** topic/#bzflag is https://BZFlag.org || http://ohloh.net/p/bzflag || https://bzflag.org/help || Channel Logs: http://infobot.rikers.org/%23bzflag/ || 2.4.12 released! https://forums.bzflag.org/viewtopic.php?f=62&t=19720 |
17:02.52 | *** mode/#bzflag [+v infobot] by ChanServ |
17:11.52 | The_Noah | blast: if i finish the new UI and it become part of BZFlag, then will 2.6 be released? |
17:12.52 | blast007 | I'm unclear what you mean. Are you asking if we'll release 2.6 as soon as your new UI is added? Or are you asking if there's a guarantee that 2.6 will be released if you put in the work to add the new UI to 2.6? |
17:15.11 | The_Noah | what i mean is, if i get my UI into it, then will it be released soon after |
17:16.11 | blast007 | I would guess that 2.6 is still a couple years away |
17:16.19 | The_Noah | :O |
17:16.23 | blast007 | if we start working on it, anyway :) |
17:16.42 | The_Noah | is there any difference between 2.5 and 2.4? |
17:16.48 | blast007 | yes |
17:17.01 | The_Noah | oh, are there any "major" differences? |
17:17.05 | blast007 | yes |
17:17.13 | The_Noah | oh, what ? |
17:17.23 | blast007 | there's actual support for changing teams without rejoining |
17:17.31 | The_Noah | YAY! |
17:17.35 | The_Noah | in the API too? |
17:17.47 | blast007 | needs some extra messaging and UI to expose it to end users, but yeah |
17:17.54 | blast007 | yep, in the API |
17:17.59 | blast007 | even have a sample plugin that uses it |
17:18.01 | The_Noah | YAY! |
17:18.19 | The_Noah | no more 3rd party APIs, when its released |
17:18.35 | The_Noah | is it allowed to play with 2.5? |
17:19.11 | blast007 | 2.5 isn't compatible with 2.4, if that's what you're asking |
17:19.36 | The_Noah | oh, so if you play with 2.5, it hast to be on 2.5 servers? and are there any 2.5 servers? |
17:19.36 | blast007 | but you could run a 2.5 server and a 2.5 client |
17:19.43 | blast007 | I don't know |
17:19.46 | blast007 | probably not |
17:19.59 | The_Noah | will they show up in a 2.4 server list? |
17:20.03 | blast007 | nope |
17:20.29 | The_Noah | will 2.5 servers show up in 2.5 server list? and will 2.4 servers show up in 2.5 client? |
17:21.02 | blast007 | 2.5 servers will show for 2.5 clients (as long as they're both at the same protocol version, which will change over time) |
17:21.15 | The_Noah | ok |
17:21.58 | The_Noah | are there any ideas for what should be added in 2.6? |
17:24.16 | blast007 | we had a planning meeting back in november, but it was mostly a higher-level planning, for things like goals/objectives. |
17:24.42 | The_Noah | is it an in-person metting, or online? |
17:24.46 | blast007 | we're wanting to improve the first-timer experience, since right now they kinda get tossed into the deep end. |
17:24.49 | blast007 | online |
17:24.57 | The_Noah | ya |
17:25.09 | The_Noah | MoFo being on top with all the lang doesnt help |
17:25.09 | blast007 | we want to investigate improving the bots so they'd be a bit more useful for training new players |
17:25.22 | blast007 | we want to look into developing a tutorial of some kind |
17:25.46 | blast007 | move team selection to after joining the server |
17:25.51 | The_Noah | ya, and a why to detect if its the first time the client has been opened, and then show help if it isd |
17:26.37 | The_Noah | that could be done with a simple BZDB var.... but someone would have to make the tutorial |
17:26.52 | blast007 | another objective is making the menu/UI more consistent with modern standards (like how we have these things called mice now) |
17:27.03 | The_Noah | ya |
17:27.13 | blast007 | improve in-game translations (including server messages) |
17:27.18 | The_Noah | im planning on a new menu UI, once im done with the HUD one |
17:27.19 | blast007 | and then also improving the website |
17:27.33 | The_Noah | i make websites..... |
17:28.18 | blast007 | we're not quite sure what we want/need for the web design yet |
17:28.23 | blast007 | need to put some more thought into it |
17:29.35 | The_Noah | i can whip out a design fast, so you could look at them |
17:29.40 | blast007 | the main bzflag.org site is a fully static site |
17:30.06 | blast007 | before that, I'd like to have some needs/wants defined |
17:31.21 | The_Noah | ok.... |
17:31.53 | The_Noah | i have a website that i could tmp host it on, and live edit it to how you like. and a plan would be nice :D |
17:32.04 | blast007 | like one of the pain points right now is that it's not a responsive layout, so it doesn't look/work so great on phones, and on a 4K screen it's real tiny :) |
17:32.33 | blast007 | http://static.bzexcess.com/bz4k.png |
17:32.54 | The_Noah | oh my |
17:34.22 | The_Noah | in about 30 mins i can start |
17:34.26 | blast007 | I'd want us to decide if we want a video on the front page, and where, what size, etc |
17:35.14 | blast007 | I'd say for now keep working on your UI changes to the game |
17:35.21 | The_Noah | ok |
17:35.22 | blast007 | we can talk more about the site later |
17:35.47 | The_Noah | just PM me any time, or ive been on here a lot too |
17:35.53 | blast007 | k |
18:05.47 | The_Noah | so the new UI is from master, so when i finish it, is there a way to *port* it to 2.4? |
18:06.13 | blast007 | yes |
18:06.31 | The_Noah | ok, ill ask you for details when i finish it |
18:07.10 | The_Noah | but one thing i do need to know, is how do i make a new options menu? |
18:07.51 | blast007 | copy an existing menu and edit it |
18:08.00 | blast007 | they're a bit... complicated |
18:08.19 | blast007 | our menu system's code doesn't do much hand holding and we have a lot of duplication of effort in each menu |
18:08.58 | The_Noah | ok |
18:09.10 | The_Noah | do i need to edit any makefiles or anything like that? |
18:09.33 | blast007 | if you add files, you have to add them to the Makefile.am, and then re-run autogen.sh and configure |
18:09.53 | The_Noah | in src/bzflag, or in the root? the makefile i need to edit |
18:10.11 | blast007 | in whatever directory you're adding a file |
18:10.18 | blast007 | each should have their own Makefile.am |
18:10.20 | The_Noah | ok, and thats it? |
18:10.42 | blast007 | yeah |
18:11.02 | blast007 | you'll have to modify other code to make them *use* those new files, but adding them to the build is as easy as that |
18:11.13 | The_Noah | ok thanks! |
18:11.20 | The_Noah | a lot easyer then i thought :) |
18:11.42 | blast007 | (there are also two other build systems, but we can fix those up - we don't expect everyone to have three operating systems) |
18:11.57 | The_Noah | :D |
18:24.28 | The_Noah | does the current website have any PHP? |
18:24.46 | blast007 | the bzflag.org page does not, but everything else is |
18:25.02 | The_Noah | would you want bzflag.org to have it? |
18:25.09 | blast007 | the bzflag.org page is *generated* with PHP though, and then I upload the resulting files |
18:25.32 | blast007 | I don't know what I'd want it to have - it needs to be discussed :) |
18:25.41 | The_Noah | yup! |
18:25.49 | blast007 | oh, sorry, read that wrong |
18:26.01 | blast007 | no, I don't want the bzflag.org page to use PHP |
18:26.12 | The_Noah | ok |
18:26.35 | blast007 | I switched it to static pages so that it requires fewer resources or could be put onto a content delivery network |
18:26.54 | The_Noah | i see |
18:26.55 | blast007 | I want the landing page for BZFlag to be able to handle being on the front page of HackerNews, for instance :) |
18:27.10 | The_Noah | yep! |
18:27.18 | The_Noah | i HATE slow loading pages |
18:27.25 | The_Noah | and i see sooo many |
18:28.11 | blast007 | the previous version of the site did use PHP, though I think I was using mvcish (my minimal PHP framework) so it wasn't too bad |
18:28.37 | blast007 | right now I'm trying to motivate myself to learn CakePHP, which I want to use for a new player portal |
18:28.40 | The_Noah | is PHP that bad? |
18:28.46 | blast007 | no |
18:28.56 | The_Noah | whats CakePHP? |
18:29.28 | blast007 | https://cakephp.org/ |
18:29.37 | blast007 | a framework for making websites in PHP |
18:30.08 | The_Noah | cool! |
18:30.20 | The_Noah | i need to learn that, i just use normal PHP |
18:30.32 | blast007 | there's quite a few frameworks out there |
18:30.46 | blast007 | Symfony, Laravel, Silex, Slim, etc |
18:31.13 | blast007 | ever used the Twig template engine? |
18:31.27 | The_Noah | no |
18:31.33 | The_Noah | i just use Apache and PHP |
18:31.36 | blast007 | it's pretty slick |
18:31.57 | blast007 | https://twig.symfony.com/ |
18:32.23 | The_Noah | someday, if i think ill get a job in web development, i might learn some other stuff |
18:32.28 | The_Noah | right now, its just a hobby |
18:32.51 | blast007 | it's mostly a hobby for me too :) |
18:33.12 | The_Noah | looks interesting |
18:33.30 | The_Noah | everything i do is a hobby, basically |
18:43.15 | JeffM | what is your job right now? |
18:43.52 | The_Noah | lawl |
18:44.00 | The_Noah | i cant tell, im sorry |
18:44.19 | JeffM | that means you are a student |
18:44.32 | The_Noah | no |
18:45.00 | The_Noah | ive had problems in the past when ive told people my job |
18:45.34 | JeffM | yeah I wouldn't want to be the whitehouse press correspondent ether. |
18:45.45 | blast007 | lol |
18:49.08 | The_Noah | OptionsMenu.cxx:63:3: error: âhudOptionsâ was not declared in this scope hudOptions = label = new HUDuiLabel; | i dont see a place where i declare it |
18:49.39 | JeffM | why 2 equals? |
18:50.01 | The_Noah | thats what others are in the code, so i just copied it |
18:50.37 | blast007 | you have to define hudOptions somewhere |
18:50.53 | The_Noah | but where? i dont see where other options are defined |
18:51.01 | blast007 | look in OptionsMenu.h |
18:51.09 | blast007 | the other items are defined there |
18:51.14 | JeffM | they are members |
18:52.32 | The_Noah | thanks, i dont know how i missed that |
18:53.00 | JeffM | are you using a C++ aware text editor? something that can jump to definition and stuff? |
18:53.14 | The_Noah | i dont think so |
18:53.18 | The_Noah | im using nano :D |
18:53.19 | JeffM | you probalby should |
18:53.21 | JeffM | oh god |
18:53.37 | The_Noah | is geany? |
18:54.33 | blast007 | best one I've found for Linux was QtCreator |
18:54.51 | JeffM | when I have to use linux I've been ok with KDeV |
18:55.06 | JeffM | but I also like integrated debugers |
18:55.10 | blast007 | which is probably another good option, at least if you're using KDE |
18:55.51 | blast007 | is it called KDeV? |
18:56.16 | blast007 | ah, KDevelop |
18:56.27 | The_Noah | some day i want to find a really good editor for Windows and Linux, but im very picky and prob will never find one :( |
18:56.37 | The_Noah | unless i make it, which ive tried..... |
18:56.44 | JeffM | Visual Studio |
18:56.49 | The_Noah | NO! |
18:56.50 | blast007 | there's a big difference between an editor and an integrated development environment |
18:57.00 | JeffM | Visual Studio Code is very nice on all platforms. |
18:57.08 | The_Noah | to bulky |
18:57.15 | blast007 | code? no it isn't |
18:57.16 | JeffM | code is very light weight |
18:57.21 | JeffM | it's not full VS |
18:57.30 | blast007 | Visual Studio Code is based on Atom, iirc |
18:57.30 | JeffM | it's a lightweight editor only component |
18:57.33 | JeffM | yeah |
18:57.49 | blast007 | which use bloated web technologies and license breaking runtimes |
18:57.52 | JeffM | don't be biased because microsoft made it :) |
18:58.16 | The_Noah | the title image in master says "v2.4.11" |
18:58.26 | JeffM | master is not branch |
18:58.38 | blast007 | yeah, we don't worry about that until close to a release |
18:58.42 | The_Noah | im new to Github |
18:58.45 | The_Noah | ok |
18:58.51 | The_Noah | just thought i would let you know :) |
18:59.00 | JeffM | master is bzflag. 2.6, or what will become it. |
18:59.04 | blast007 | we may end up just making the version number get added with code instead of baking it into the texture |
18:59.14 | JeffM | yeah it's not that hard to do. |
19:00.39 | The_Noah | now i just have to do a lot of copy-pasting...... |
19:04.35 | The_Noah | in an options menu, when you set the values, do you need the { } with the case? example: case 'e': { code; break; } or case 'e': code; break; |
19:04.46 | The_Noah | because some have them and some dont |
19:05.24 | JeffM | you need the { if the case allocates a local variable |
19:05.31 | JeffM | it's always ok to put in the { |
19:05.36 | The_Noah | ok thanks |
19:06.12 | The_Noah | would it be better if i take them away if there not needed? |
19:06.23 | JeffM | but case 'e': int i = 0; break; will throw an error it has to be case 'e':{int i =0; break;} |
19:06.45 | JeffM | "better" is subjective |
19:07.28 | blast007 | if you're doing it for some, you might as well just make it consistent |
19:07.30 | The_Noah | im just deleting them |
19:07.51 | The_Noah | now to make sure it doesnt crash again! |
19:07.53 | JeffM | I'd not change unrelated code to your patch. |
19:07.59 | The_Noah | im not |
19:08.02 | The_Noah | just in my new code |
19:08.02 | blast007 | JeffM: it's a new menu |
19:08.02 | JeffM | it makes your merge more messy |
19:08.03 | JeffM | ok |
19:08.19 | The_Noah | NO! ERRERS@ |
19:08.23 | The_Noah | ERRORS* |
19:11.26 | The_Noah | the menu works! |
19:14.09 | blast007 | yay |
19:18.21 | The_Noah | so i need an option to be "Off, Normal, Advanced", and it stored as a 0, 1, or 2, (in that order) but in a menu i found how its done, but it uses multiple vars, is there a way to use just 1? |
19:18.56 | blast007 | store it as an int (integer) instead of two bools |
19:19.13 | blast007 | there should be plenty of examples of that. check the GUI options menu |
19:19.30 | blast007 | the sliders are gonna store that way |
19:19.51 | The_Noah | testing..... |
19:23.33 | The_Noah | got it, thanks! |
19:23.42 | blast007 | :) |
19:25.06 | The_Noah | now to the HUD UI part..... |
19:26.21 | The_Noah | is in the HUD, it checks the values of a few BZDB vars, should i BZDB cache those, or but them in a local var, or just leave it? |
19:26.28 | The_Noah | the new HUD |
19:29.39 | JeffM | anything you check per frame should be cached. |
19:30.21 | The_Noah | BZDB cached or local var? |
19:30.31 | JeffM | I'd use the BZDB cache |
19:30.41 | JeffM | it's faster than doing a single eval |
19:30.49 | blast007 | if the local var is in a function, it doesn't stick around longer that the execution of that function |
19:30.58 | The_Noah | so i dont look through code, do you know off the top of your head how to BZDB cache? |
19:31.06 | The_Noah | i know |
19:31.54 | blast007 | src/common/BZDBCache.cxx and include/BZDBCache.h, probably |
19:31.58 | JeffM | but calling eval once per frame is slower than the BZDB cache |
19:32.10 | JeffM | the cache only calls eval when it changes |
19:32.16 | The_Noah | ok |
19:32.25 | JeffM | bzdb is stored as strings, you don't want to parse strings all the time. |
19:32.43 | blast007 | is there a reason we don't do BZDBCache for *all* of it? |
19:33.26 | blast007 | just easier to add new vars without doing that? |
19:36.23 | JeffM | yeah |
19:36.35 | JeffM | the cache was added second |
19:36.59 | JeffM | in my bzdb impementation I had it always cache the parsed values. |
19:37.11 | JeffM | my "cache" just skipps the name lookup |
19:38.02 | The_Noah | when 2.5 when i start a server, it works, but when i connect, it says it cant because of the version |
19:38.27 | blast007 | make sure you're actually running the bzfs from the source |
19:38.38 | blast007 | as in, run src/bzfs/bzfs, not just 'bzfs' |
19:39.20 | JeffM | did you switch to the branch? |
19:39.41 | The_Noah | i ran it from inside the client |
19:39.51 | The_Noah | JeffM: what do you mean? |
19:40.05 | JeffM | when you cloned from SVN, did you do a switch to the 2_4 branch? |
19:40.07 | *** join/#bzflag nadir (uid134094@gateway/web/irccloud.com/x-pzssvkwtvwcmkyyj) |
19:40.14 | The_Noah | no, master branch |
19:40.25 | JeffM | that is not compatible with 2.4 |
19:40.30 | The_Noah | i know |
19:40.35 | The_Noah | i can bzfs from inside the client |
19:40.52 | blast007 | don't use that |
19:40.56 | blast007 | that will jsut run 'bzfs' |
19:41.00 | blast007 | just* |
19:41.11 | The_Noah | ok |
19:42.04 | The_Noah | it works! |
19:42.10 | The_Noah | now just more copy and pasting |
19:55.18 | The_Noah | so, how do i BZDB cache something? |
20:01.55 | The_Noah | error: âBZDBCache::Int BZDBCache::hudCrosshairâ is not a static data member of âclass BZDBCacheâ |
20:19.30 | The_Noah | where is BZDBCache.h? |
20:21.21 | blast007 | include/BZDBCache.h |
20:21.40 | The_Noah | thanks |
20:22.07 | blast007 | the linux find command can come in handy, and your file browser should also have a search :) |
20:22.22 | The_Noah | :D |
20:24.13 | The_Noah | BZDB cache helps a lot! |
20:24.17 | The_Noah | with performance |
20:29.20 | The_Noah | the BZDB cached var doesnt update when the BZDB var is changed.... |
20:29.35 | blast007 | did you set up a callback for it? |
20:29.57 | The_Noah | yes |
20:31.31 | blast007 | what did you do to add the callback? |
20:31.52 | The_Noah | else if (name == "hudCrosshair") hudCrosshair = BZDB.evalInt("hudCrosshair"); |
20:32.12 | The_Noah | BZDB.addCallback("hudCrosshair", clientCallback, NULL); |
20:32.46 | blast007 | hmm, that should be enough |
20:32.55 | The_Noah | i think i found the problem, let me check |
20:34.24 | The_Noah | when i was reading the cache into a var, that var was a bool, but now its an int and it still doesnt work |
20:34.55 | The_Noah | was: const bool hudCrosshair = (int)BZDBCache::hudCrosshair; now: const int hudCrosshair = (int)BZDBCache::hudCrosshair; still doesnt work...... |
20:37.11 | The_Noah | fixed! the BZDB var got reset to its default which was making it do what it was doing |
20:37.58 | blast007 | there's also somewhere you have to modify to make variables get saved in the config |
20:38.07 | blast007 | BZDBDefaults or similar |
20:39.08 | The_Noah | ya i know |
20:39.12 | blast007 | k |
20:40.18 | The_Noah | i guess whenever you compile, it reset the defaultBZDB |
20:41.44 | blast007 | no |
20:42.12 | blast007 | we may not have changed master to use a different config directory, so if you ran a 2.4 client, it might have wiped way the 2.5 settings |
20:42.17 | blast007 | away* |
20:44.31 | The_Noah | i just compiled it again, and it reset one of my settings i set in 2.5 |
20:44.56 | blast007 | you mean it reset them in your config file? |
20:45.04 | The_Noah | yes |
20:45.05 | blast007 | because compiling doesn't touch your config file |
20:45.57 | The_Noah | i run 2.5 client, change a setting and save. i compile 2.5 cleint. i run 2.5 client, and the setting is the default |
20:46.14 | blast007 | try it again without the compile step |
20:49.03 | The_Noah | heres what happend. i ran it, changed the setting, and hit F12. i run the client again, and the setting is default. i change it, click save settings, and hit F12. i run it again, and the setting is saved |
20:50.31 | The_Noah | oh no, if you open the client, go into the options menu, then it doesnt matter what i do, if i hit F12, i get: Segmentation fault (core dumped) |
20:50.39 | The_Noah | if I open* |
20:50.58 | The_Noah | thats why it wouldnt save on exit |
20:51.43 | blast007 | ooo, now you get to learn about debugging :) |
20:52.13 | The_Noah | but i didnt change anything about exiting, and i know how to debug, ive done it A TON!!! |
20:52.41 | blast007 | do you know how to build a debug client? |
20:53.11 | The_Noah | no |
20:53.33 | blast007 | you have to run configure again, and pass it --enable-debug |
20:53.45 | blast007 | so, ./configure --enable-debug |
20:53.48 | blast007 | then run make again |
20:54.21 | blast007 | then you can run the client through gdb, get it to crash, and get a backtrace |
20:54.50 | blast007 | depending on the kind of memory access issue you've created, it might give you unreliable information, though |
20:54.53 | The_Noah | when i dont want debug, do i --disable-debug? and whats gdb? |
20:55.04 | blast007 | gdb is a debugger |
20:55.19 | The_Noah | and i have to run it through there? |
20:55.42 | blast007 | when you say "i know how to debug, ive done it A TON!!!", do you mean you've done a lot of 'echo' in PHP? |
20:56.05 | The_Noah | no, i know a lot more then PHP. |
20:56.23 | The_Noah | i really havnt use C(++) alot |
20:56.54 | The_Noah | so, not "error that doesnt help" debugging |
20:57.27 | blast007 | that's usually how I debug my PHP, at least :) |
20:57.39 | The_Noah | me too :D |
20:57.41 | blast007 | never had much success with things like XDebug |
20:58.10 | The_Noah | do i have to run BZFlag through gdb to get the debug info? |
20:58.48 | blast007 | you don't *have* to, but it's the easiest way |
20:58.53 | The_Noah | ok |
20:59.12 | blast007 | (otherwise you have to make sure that your ulimit for coredumps is set high enough, and then load the coredump into gdb) |
20:59.29 | The_Noah | um ok |
20:59.33 | blast007 | :) |
20:59.52 | The_Noah | how long does it normally take YOU to compile BZ/ |
21:00.05 | blast007 | depends |
21:00.24 | blast007 | my laptop is probably 5 to 10 minutes, some of my desktops are probably closer to 2 minutes |
21:00.42 | The_Noah | me, about 10-15 |
21:00.55 | The_Noah | this is gonna take a while |
21:01.00 | blast007 | I do have an SSD and 8GB RAM in my laptop though |
21:01.06 | blast007 | and probably ccache |
21:01.38 | The_Noah | i have an old HDD and 4GB |
21:01.40 | The_Noah | RAM |
21:01.46 | blast007 | is it a dual-core processor? if so, you could run 'make -j3' |
21:02.05 | The_Noah | while im waiting..... http://bzflag.ns01.biz/bzweb/ |
21:03.33 | The_Noah | oh, i never knew that |
21:03.37 | The_Noah | too late now |
21:03.43 | The_Noah | ill have to remember that |
21:03.47 | blast007 | you could ctrl+C it and run make -j3 |
21:03.51 | blast007 | it'll pick up where it left off |
21:04.07 | The_Noah | nice |
21:04.19 | The_Noah | did you look at the link i sent? |
21:04.24 | blast007 | yeah |
21:04.36 | The_Noah | do you like it, its basically nothing right now |
21:05.21 | The_Noah | i didnt change this!!!!! SceneRenderer.cxx:47:13: error: âint strrncmp(const char*, const char*, int)â defined but not used [-Werror=unused-function] static int strrncmp(const char* s1, const char* s2, int num) |
21:05.39 | blast007 | eh, that might be something on our end |
21:05.55 | blast007 | compiling in debug mode treats warnings as errors |
21:05.58 | The_Noah | let me try without -j3 |
21:06.03 | The_Noah | oh |
21:06.03 | blast007 | no, it's not the -j3 |
21:06.14 | The_Noah | so what should i do? |
21:06.37 | blast007 | edit that file and comment out the entire 'int strrncmp(const char*, const char*, int)' function |
21:06.43 | The_Noah | ok |
21:06.48 | blast007 | and then make -j3 again |
21:07.21 | blast007 | you may have a newer version of GCC than I do and that might be a newer warning |
21:08.14 | The_Noah | gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.5) |
21:09.14 | blast007 | hmm, guess I'm on 6.3.0 here |
21:09.14 | The_Noah | do you like: https://github.com/The-Noah-BZ/BZFlag-Textures/blob/master/Modern/dst/red_icon.png ? |
21:10.12 | JeffM | why would you make the icon look worse? |
21:10.22 | The_Noah | its modern |
21:10.30 | The_Noah | gdb ./src/bzflag/bzflag - i just get a (gdb) prompt |
21:10.33 | JeffM | no it's worrse :) |
21:10.38 | blast007 | it.. looks a bit more like Windows 3.1 |
21:10.48 | The_Noah | ok |
21:10.53 | The_Noah | other people like it |
21:10.59 | The_Noah | and im not saying names |
21:11.04 | blast007 | I don't think art will be the hardest part of the site |
21:11.13 | JeffM | other people are silly, I've always said that |
21:11.24 | blast007 | the responsive layout will be the most challenging part |
21:11.28 | The_Noah | its 4K! |
21:11.31 | The_Noah | ya |
21:11.33 | blast007 | The_Noah: have you done responsive design before? |
21:11.37 | JeffM | your mom is 4K ;) |
21:11.44 | The_Noah | i just had to put a icon and thats what i had |
21:12.07 | The_Noah | if i understand you correctly, then yes |
21:12.51 | blast007 | responsive design uses media queries to apply different CSS rules depending on various factors like the resolution of the browser window |
21:13.09 | The_Noah | yes |
21:13.41 | blast007 | and there will probably be some use of flexbox to make things flow differently depending on the resolution |
21:15.04 | blast007 | The_Noah: as for gdb, once you get to that gdb shell, you can type 'run -window 640x480' |
21:15.05 | The_Noah | how do i debug the segmentation fault? |
21:15.23 | JeffM | with a debugger |
21:15.25 | blast007 | and you may want to turn off mouse grab |
21:15.43 | The_Noah | ok.... now what |
21:15.47 | blast007 | I can't remember if, on linux, it will continue to capture your mouse if it pauses the program in the debugger |
21:15.54 | blast007 | is the client running? |
21:15.56 | JeffM | it will |
21:15.58 | The_Noah | yes |
21:16.04 | JeffM | the ungrab was for windows only |
21:16.04 | blast007 | if so, quit the client and see if it crashes |
21:16.12 | JeffM | hence it's named Win32NoGrab or something |
21:16.30 | The_Noah | it wont quit, now its not responding |
21:16.38 | blast007 | check the debugger |
21:16.49 | blast007 | does it say there was a segfault there? |
21:16.51 | The_Noah | Thread 1 "bzflag" received signal SIGSEGV, Segmentation fault. __GI___libc_free (mem=0xffffffff) at malloc.c:2951 2951malloc.c: No such file or directory. |
21:16.59 | blast007 | okay, now type 'bt' |
21:17.11 | The_Noah | ok.... |
21:17.23 | blast007 | (that will give you a backtrace that shows the start to end of the execution path, ending where it crashed) |
21:17.39 | blast007 | or maybe it starts with the end, I forget :) |
21:17.50 | The_Noah | #0 __GI___libc_free (mem=0xffffffff) at malloc.c:2951 #1 0x0000000000490389 in HUDuiLabel::~HUDuiLabel (this=0x2bffca0, __in_chrg=<optimized out>) at HUDuiLabel.cxx:37 #2 0x00000000004903ca in HUDuiLabel::~HUDuiLabel (this=0x2bffca0, __in_chrg=<optimized out>) at HUDuiLabel.cxx:41 #3 0x00000000004788e9 in HUDDialog::~HUDDialog (this=0x3a3f640, __in_chrg=<optimized out>) at HUDDialog.cxx:29 #4 0x00000000004b118c i |
21:18.22 | The_Noah | #5 0x00000000004b11bc in OptionsMenu::~OptionsMenu (this=0x3a3f640, __in_chrg=<optimized out>) at OptionsMenu.cxx:117 #6 0x00000000004aa18f in MainMenu::~MainMenu (this=0x2c15080, __in_chrg=<optimized out>) at MainMenu.cxx:113 #7 0x00000000004aa214 in MainMenu::~MainMenu (this=0x2c15080, __in_chrg=<optimized out>) at MainMenu.cxx:116 #8 0x00000000005651f6 in startPlaying (_display=0xa3acb0, renderer=...) at pl |
21:18.30 | The_Noah | thats most of it |
21:18.32 | blast007 | if you need to paste multiple lines, use a pastebin - easier to read |
21:18.47 | The_Noah | oh, whats a pastebin? |
21:18.53 | The_Noah | is that that one website? |
21:19.16 | blast007 | but see jump #5? that's in the options menu. so you may be doing something wrong with the creation or destruction of your extra menu. |
21:19.28 | The_Noah | https://pastebin.com/7pEdpDH2 |
21:20.00 | blast007 | I guess #4 is also in the options menu |
21:20.03 | JeffM | it's freeing a bad point to aUI label |
21:20.06 | JeffM | pointer |
21:20.14 | JeffM | my guess is something isn't inited to nulptr |
21:20.23 | JeffM | or leftover from the code he copied and pasted. |
21:21.06 | JeffM | __GI___libc_free (mem=0xffffffff) at malloc.c:2951 == badness |
21:21.42 | The_Noah | ln 107: OptionsMenu::~OptionsMenu() | ln 117: } |
21:23.21 | The_Noah | so whats wrong? |
21:25.59 | blast007 | JeffM: would it be a bad label he's adding into the list? or a double free? |
21:27.31 | blast007 | The_Noah: what is line 107 in your src/bzflag/OptionsMenu.cxx? probably where you delete your HUD options menu? |
21:27.53 | The_Noah | OptionsMenu::~OptionsMenu() |
21:28.28 | blast007 | what about 117? |
21:28.42 | The_Noah | } |
21:28.51 | blast007 | eh// |
21:28.53 | blast007 | eh..* |
21:29.00 | blast007 | you sure? |
21:29.07 | The_Noah | yes |
21:29.41 | The_Noah | line 110: delete hudOptionsMenu; |
21:31.43 | blast007 | would you throw your OptionsMenu.cxx and your new menu up on https://gist.github.com/ ? |
21:32.12 | blast007 | (if you're logged into github, you can delete the gist later if you want) |
21:32.28 | The_Noah | ill try |
21:34.20 | The_Noah | https://gist.github.com/The-Noah-BZ/7b82ad5b0be1e54958e1ec46afaf07cc |
21:36.09 | The_Noah | do you need the header files? |
21:38.34 | blast007 | whatever the problem is, it's not immediately jumping out at me |
21:40.44 | The_Noah | JeffM: have any idea whats wrong? |
21:45.44 | The_Noah | whats "nulptr"? |
21:46.31 | JeffM | nullptr |
21:46.38 | The_Noah | what ever |
21:46.44 | The_Noah | "my guess is something isn't inited to nulptr" |
21:47.19 | *** join/#bzflag bertman (~bert@unaffiliated/bertman) |
21:47.20 | JeffM | you know NULL in C? |
21:47.31 | The_Noah | yes |
21:47.38 | JeffM | nullptr is the C++11 version of that |
21:48.11 | The_Noah | guiOptionsMenu(NULL), hudOptionsMenu(NULL), etc. |
21:48.16 | JeffM | basilcy you have a pointer to uniniizled memory that is being freeed |
21:48.42 | JeffM | what members do you have in the header? |
21:48.45 | The_Noah | did you look at my gist? |
21:49.08 | The_Noah | the header file? |
21:49.17 | JeffM | yeah |
21:49.25 | The_Noah | GUIOptionsMenu*guiOptionsMenu; HUDOptionsMenu* hudOptionsMenu; EffectsMenu*effectsMenu; CacheMenu*cacheMenu; SaveWorldMenu*saveWorldMenu; InputMenu*inputMenu; AudioMenu*audioMenu; DisplayMenu*displayMenu; |
21:49.35 | JeffM | your destructor is empty, so it must be an automatic deallocation |
21:50.09 | The_Noah | meaning..... |
21:50.36 | JeffM | did you leave a bunch of members from the menu you copied laying around? |
21:50.52 | The_Noah | in my new menu? |
21:51.00 | JeffM | in the header for the new file |
21:51.41 | JeffM | when does options get deallocated? |
21:51.42 | The_Noah | no |
21:51.50 | The_Noah | what do you mean? |
21:51.58 | JeffM | <PROTECTED> |
21:52.13 | JeffM | ahh it's a reference to the list |
21:52.14 | JeffM | nevermind |
21:52.52 | JeffM | well it's dying while trying to free a bad pointer |
21:53.13 | The_Noah | hmm |
21:53.17 | JeffM | if it was on my machine I'd set a breakpoint in the destructor and step until it dies. |
21:53.26 | The_Noah | but its the same as all the other code, just renamed |
21:53.38 | The_Noah | how do i do that? |
21:53.40 | JeffM | that doesn't mean it doesn't have a bug |
21:53.48 | JeffM | I don't know how to set breakpoints in GCC |
21:53.50 | The_Noah | i know |
21:53.58 | The_Noah | ok |
21:54.14 | JeffM | for me, I click and press F9 and then F5 and it all just works |
21:54.46 | The_Noah | oh |
21:57.25 | The_Noah | so when it tries to delete the var, it cant because its NULL? |
21:57.40 | The_Noah | pointer* |
21:58.09 | JeffM | no it can't because it's random garbage memory |
21:58.13 | JeffM | it was not set to NULL |
21:58.20 | JeffM | that's the 0xFFFFFFF part |
21:58.29 | The_Noah | oh ok |
21:58.36 | JeffM | the debugger inits all memory to a known value so it can trap this exact case. |
21:58.40 | JeffM | in release it'd be random memory |
22:01.01 | The_Noah | so why is this happening? |
22:08.54 | JeffM | that's what you 'll have to find out |
22:09.02 | The_Noah | ok.... |
22:09.18 | The_Noah | well, if you get any ideas on how to fix it, just let me know |
22:09.19 | JeffM | that's part of develping, digging into cases and finding out what's going on |
22:09.30 | The_Noah | yay :\ |
22:10.03 | JeffM | I don't have the code to debug so I can't offer any more assistance than what was shown in that callstack. |
22:10.09 | The_Noah | i know what im going to be doing for a long time |
22:10.22 | The_Noah | did you see my Gist? |
22:10.32 | JeffM | that's not all the code and it's not in a debuggable state |
22:10.42 | JeffM | that's a snippet |
22:10.42 | The_Noah | should i update my fork with the code? |
22:11.04 | JeffM | generaly people don't push known broken code. |
22:11.26 | The_Noah | should i do it to a different branch? |
22:11.36 | JeffM | that could be one method |
22:11.50 | The_Noah | ok, ill make one called broken |
22:11.53 | JeffM | I am not sure what the GIT method is for letting someone else clone your local repo |
22:12.03 | The_Noah | its not local |
22:12.05 | The_Noah | just* |
22:12.17 | JeffM | have you commited and pushed? |
22:12.25 | The_Noah | im going to know |
22:12.37 | The_Noah | give me a min, im new to Github |
22:12.37 | JeffM | if you push I can clone it |
22:13.31 | The_Noah | how can i push it to a new branch? |
22:13.43 | blast007 | you could just push it to master |
22:13.50 | The_Noah | ok, i will |
22:14.06 | blast007 | otherwise you would need to make the branch, commit it to that branch, and push that branch |
22:14.33 | blast007 | (which is probably the *right* way, but.. I'm new to github too) :) |
22:15.02 | JeffM | well there SHOULD be a way in GIT for me to pull from his local repo. |
22:15.12 | JeffM | but that may require access I don't have |
22:15.29 | JeffM | I thoiught that's how code reviews were supposed to work |
22:15.32 | blast007 | he'd have to be serving his repo to the net |
22:15.37 | JeffM | yeah maybe |
22:15.42 | JeffM | BulletCatcher would know ;) |
22:15.50 | blast007 | it'd still require that he commited stuff though :) |
22:16.11 | JeffM | commited but not pushes |
22:16.26 | JeffM | maybe there is a way to package up a set of commits into a file |
22:16.28 | blast007 | I'd say about 50% of my time with git is renaming a broken clone and doing clean clones :P |
22:16.31 | The_Noah | https://github.com/The-Noah-BZ/bzflag/tree/debug |
22:17.19 | JeffM | how does one duplicate the crash? |
22:18.00 | The_Noah | compile it, run it, go to the options menu, then exit |
22:21.12 | JeffM | works fine |
22:21.39 | The_Noah | :O |
22:21.45 | The_Noah | no segmentation fault? |
22:21.47 | JeffM | you added files? |
22:21.55 | The_Noah | yes |
22:21.57 | The_Noah | a new menu |
22:22.05 | JeffM | what files were added? |
22:22.29 | The_Noah | src/src/HUDOptionsMenu.(cxx and h) |
22:22.35 | The_Noah | src/bzflag/* |
22:22.54 | JeffM | hang on, I'm in the wrong branch |
22:22.55 | blast007 | you checked out the debug branch, JeffM? |
22:22.58 | blast007 | heh :) |
22:23.02 | The_Noah | :D |
22:23.29 | The_Noah | blast: could you make the segmentation fualt? |
22:23.51 | The_Noah | or have you not tried :) |
22:24.35 | JeffM | he probalby can't build at work |
22:25.23 | The_Noah | blast, your chatting at work? |
22:25.33 | The_Noah | i thought his work has BZFlag :) |
22:27.53 | blast007 | mine is building right now |
22:31.43 | JeffM | 2.5 doesn't build on windows. |
22:32.20 | The_Noah | thats sad.... |
22:32.24 | The_Noah | why not? |
22:32.32 | JeffM | png header locations |
22:33.02 | blast007 | do you have the latest deps? |
22:33.17 | JeffM | I have the deps that work for 2.4 |
22:33.30 | blast007 | needs the master branch bzflag-dependencies |
22:33.50 | JeffM | and of course they both use the same environment variable? |
22:34.11 | blast007 | yeah, but the master deps should still work for 2.4 |
22:34.15 | JeffM | k |
22:34.21 | blast007 | I've not taken anything away, just added libpng |
22:34.53 | JeffM | is there a binary package? |
22:35.09 | blast007 | no - want me to make one quick? |
22:35.19 | JeffM | if you want me to debug his thing :) |
22:35.40 | The_Noah | blast007: DO IT!! :D |
22:38.33 | blast007 | JeffM: http://static.bzexcess.com/bzflag-dependencies-master.7z |
22:42.19 | JeffM | blehh bitshifts for divides |
22:46.31 | JeffM | why make warnings as errors if you arn't going to fix the warnings? |
22:47.49 | blast007 | is Windows treating warnings as errors? |
22:47.56 | JeffM | yeah |
22:48.04 | JeffM | and there are a TON of type cast warnings |
22:49.39 | JeffM | it's the 7th index into your element list |
22:49.58 | JeffM | HAHAHAHAHAHA |
22:50.02 | JeffM | https://www.irccloud.com/pastebin/xXAjUd3R/ |
22:50.21 | JeffM | oh wait that's right |
22:50.25 | JeffM | I recend my HAHAHAHAAH |
22:51.00 | The_Noah | me? |
22:51.04 | JeffM | no |
22:51.14 | The_Noah | oh ok |
22:51.30 | JeffM | there is a hudUI label with an invalid params |
22:51.58 | JeffM | "cache settings" |
22:52.17 | The_Noah | what file? |
22:52.34 | JeffM | your file |
22:52.56 | The_Noah | what line? |
22:53.19 | JeffM | what where you init it? |
22:53.45 | JeffM | the one you name Cache Settings |
22:53.49 | JeffM | take that out it works fine. |
22:54.03 | blast007 | isn't that a standard menu? |
22:54.11 | JeffM | it's in his code |
22:54.23 | The_Noah | HUDOptionsMenu.cxx? |
22:54.37 | JeffM | oh no it's regular options menu |
23:04.40 | JeffM | <PROTECTED> |
23:05.46 | blast007 | it's the resize |
23:06.04 | blast007 | you added an item, but you didn't bump up the value of i in three spots |
23:06.20 | The_Noah | me? |
23:06.25 | JeffM | yeah |
23:06.28 | blast007 | yeah |
23:06.33 | blast007 | OptionsMenu::resize |
23:06.47 | blast007 | line 178 should be 7 and 9 instead of 6 and 8 |
23:07.00 | blast007 | and line 186 should be setting i to 8 instead of 7 |
23:08.26 | blast007 | JeffM: am I correct in thinking that the setIndex on the HUDuiLabel casted to a HUDuiList was borking some memory in the label? |
23:09.43 | The_Noah | its fixed!! |
23:09.46 | The_Noah | thanks blast! |
23:10.00 | JeffM | probably |
23:10.12 | blast007 | JeffM: also, in Visual Studio 2015, I don't get any warnings when building master |
23:10.15 | JeffM | this is why a third party lib is better :) |
23:10.26 | JeffM | blast007: debug or release? |
23:10.29 | blast007 | debug |
23:10.34 | JeffM | I did |
23:10.37 | JeffM | in 32 bit |
23:10.38 | blast007 | you using 2017? |
23:10.42 | JeffM | nope |
23:10.44 | blast007 | hmm |
23:10.55 | blast007 | that wasn't his fork though |
23:15.10 | JeffM | yeah the fixed index stuff is what makes the menu stuff super fragile |
23:15.36 | blast007 | the warnings were from his fork |
23:15.49 | JeffM | he probalby moded GL code |
23:16.00 | JeffM | it was a lot of float/int casting in GL code. |
23:16.03 | blast007 | yup |
23:17.09 | blast007 | 102 warnings :) |
23:17.17 | JeffM | quality coding |
23:17.35 | blast007 | (possibly more, because I didn't add the new files) |
23:18.34 | blast007 | is the solution to explicitly cast them to GLFloat? |
23:18.51 | JeffM | or use the int GL funcitons |
23:18.56 | The_Noah | i get 0 warnings.... |
23:19.04 | blast007 | The_Noah: this is in Visual Studio 2015 |
23:19.09 | JeffM | but yeah if it's float math, you need to do it wtih flows |
23:19.15 | JeffM | The_Noah: your compiler isn't strict |
23:19.43 | The_Noah | ok |
23:19.52 | The_Noah | so, do i need to change stuff? |
23:19.53 | JeffM | you mixed a bunch of int and float math |
23:20.00 | The_Noah | oh |
23:20.00 | JeffM | do it all as floats |
23:20.04 | The_Noah | ok |
23:20.09 | JeffM | assigning an int to a float can loose data |
23:20.18 | JeffM | so that's a warning |
23:20.30 | JeffM | ether do the math as floats or cast the ints to floats |
23:20.31 | The_Noah | ? |
23:20.35 | The_Noah | ok |
23:20.36 | blast007 | HUDRenderer.cxx is the source of all the warnings |
23:20.51 | JeffM | a float can't hold the exact same data as an int |
23:20.59 | The_Noah | so set everything to floats, even if there ints? |
23:21.03 | JeffM | there are rounding changes. |
23:21.06 | blast007 | for instance, like 839, there's a warning about the conversion from int to GLfloat |
23:21.19 | JeffM | if the funciton takes a float, do the math as a float |
23:21.23 | blast007 | glVertex2f takes two floats, not two ints |
23:21.29 | JeffM | yeah |
23:21.47 | The_Noah | what line? |
23:21.53 | JeffM | 102 of them |
23:21.55 | JeffM | they are all over |
23:22.01 | blast007 | line 839, I meant |
23:22.31 | blast007 | if you divide an int by 2, does it convert that to a float? or does it round up/down to the nearest integer value? |
23:22.32 | The_Noah | so cast to floats, or set them as floats? |
23:22.44 | JeffM | ether |
23:22.53 | JeffM | it just has to be a float before it goes into the funciton |
23:22.58 | JeffM | or before an assignment to a float |
23:23.10 | JeffM | you just can't let the compiler autobox it |
23:23.27 | The_Noah | i use gcc, is there a way to make it give me all these warnings? |
23:23.46 | blast007 | fm.drawString also takes two float values for position, not two ints, which you have wrong on line 852 |
23:24.07 | blast007 | I don't know if there's a way to make gcc throw a warning on those |
23:24.37 | The_Noah | for example, will 1.3f + 1 return a float? |
23:24.54 | JeffM | yes |
23:25.06 | blast007 | we're already passing this to gcc: -Wall -Wextra -Wcast-qual -Wredundant-decls -Wshadow -Wundef -pedantic |
23:25.07 | The_Noah | so should i change 1 to 1.0f, or is it fine? |
23:25.07 | JeffM | but int/2 + int won't |
23:25.35 | JeffM | getting any floats into the math should kick it into float retursn |
23:26.10 | The_Noah | ok, so should i change it or is it fine? 1.3f + 1 |
23:26.25 | JeffM | that line would not give an error |
23:26.32 | JeffM | unless it was being passed into an int function |
23:26.44 | The_Noah | nevermind |
23:27.26 | The_Noah | well, ill turn my ints to floats, thanks |
23:27.40 | blast007 | The_Noah: https://gist.github.com/blast007/f147f5b6fd807bfb5e247db2f3feb63b (the number at the end of each line is the line number) |
23:28.39 | The_Noah | ok thanks |
23:32.59 | JeffM | You may want to setup a windows build system, it is the OS that most clients run |
23:34.30 | The_Noah | i cant |
23:34.53 | The_Noah | i was thinking if i need to build on Windows, i can just ask someone :D |
23:36.08 | JeffM | why can't you? |
23:37.03 | The_Noah | gotta go, bye |
23:52.18 | blast007 | iirc, he said the PC running Windows wasn't his, so he probably doesn't want to (or can't) install Visual Studio |
23:52.30 | JeffM | aww it's his mons |
23:52.33 | JeffM | moms |