« first day (1858 days earlier)      last day (3459 days later) » 

20:05
I have a list of nodes and i iterate over them to check if they have LOS to each other. I want to merge them into one node if they are very close to each other, but I can't do that while iterating. If I add them to a list and merge them later, then some paths might become invalid because they will point to the erased nodes. Any suggestions on how I can circumvent the problem?
Pip
Pip
sounds reasonable :D
@KevinvanderVelden I bet you know the solution! :D
Just update the paths you would invalidate?
I'm assuming it's for pathfinding, so they'd be bidirectional
Holy ... Why didn't I think of that D:
Jon
Jon
If I really do spend time to learn UE, probably gonna ditch Unity
20:16
But.. C#
Jon
Jon
I have a feeling it is going to get worse as the versions start rolling out
But ... C++
Now that I said that.. I actually miss C++
@OMGtechy Yes!
Jon
Jon
I'm just really annoyed with some of their decisions.. mainly the forced permissions for logging
template <unsigned x> <3
Jon
Jon
20:17
that just rubs me the wrong way
@OMGtechy (void*)arr;
you're using a c style cast AND you're using a void*
just die
Jon
Jon
dies
20:17
On an array... I know
thank you
Jon
Jon
I put the ray in array
@Hjorthenify because you've been staring at the problem from a certain direction and needed fresh eyes =p
tbf void* has uses
20:18
@KevinvanderVelden Or sleep. It might be the lack of sleep.
Jon
Jon
raymond + pirate = array
Sleep is also good
c style casts also have obscure uses BUT THIS ISN'T ONE OF THEM
@OMGtechy Passing variables to thread entries :D
Jon
Jon
20:19
if you can cast, yer a wizard
4
ahaha
@OMGtechy Isn't that how WinAPI does it?
The WinAPI should not every be used as an example of what to do :P
plus it's in C
IIRC
Jon
Jon
winAPI is all like... yo, lookat all the shit I do wrong
20:20
MSVC bro
let's delay our template parsing because we hipster yo
DWORD WINAPI MyThreadFunction( LPVOID lpParam );
LPVOID
I never understood the wording in the winAPI...
Long Pointer to Void
Yes, there were once short pointers
Yes, but why?
Oooh
wait.. what?
this is the part where your mind melts
Ye olden times
20:22
@OMGtechy I'm curious. Care to explain? :D
@Pip probs from Perl :P
@Hjorthenify umm .. do you really want to know?
@OMGtechy Yes! My brain craves technical knowledge!
urgh, that means I have to dig my archaic knowledge up
@Hjorthenify obsolete technical knowledge =p
Unless you wanna program for a, 6502 was it?
That age
20:25
@OMGtechy Literally dig? Wow that stuff must be old.
I'm not as old as some of my knowledge so how it got there I'll never know
@KevinvanderVelden If you don't know history, you're doomed to repeat it.
2
@Hjorthenify well, repeating successes is a good thing right?
And short/long pointers offered some good benefits
to be fair the concepts are still relevant today
member function pointers in C++ on x86 are a different size I think
@KevinvanderVelden If it was such a success, why did it become obsolete?
20:26
@Hjorthenify because we have too much memory now
We're going all over the place all the time so it's not a useful feature
@OMGtechy yeah I'm trying to find it as well but
it was a matter of "we don't wanna waste all those bits on this pointer when we know the value can be stored in less, so we'll use a smaller pointer size"
and short / long pointers were born
@Hjorthenify does that help?
Pip
Pip
interesting
the relative addressing thing is another use of such short pointers
20:28
Found the wiki!
x86 memory segmentation refers to the implementation of memory segmentation in the Intel x86 computer instruction set architecture. Segmentation was introduced on the Intel 8086 in 1978 as a way to allow programs to address more than 64 KB (65,536 bytes) of memory. The Intel 80286 introduced a second version of segmentation in 1982 that added support for virtual memory and memory protection. At this point the original model was renamed real mode, and the new version was named protected mode. The x86-64 architecture, introduced in 2003, has largely dropped support for segmentation in 64-bit mode...
@OMGtechy Yup. I kinda had an idea it would be something like this. Interesting read though.
the member function pointer thing is the most interesting bit IMO
So basically.. They served a performance increase as well?
20:30
@OMGtechy Can't find anything about that
@Hjorthenify see that link I posted :D
yup :P
read it :P
Sorry.. I couldn't express it in any other way.
ahahahah
the picture is perfect
20:38
@OMGtechy When is CppCon?
Couple of weeks from now
ish
Excited?
Hell yeah
also need to write my talk but otherwise YEAAH
My team is presenting something mind blowing to the C++ world
watch Julian Storer's talk
I will :)
How comes Unity doesn't have tuples or pairs...
20:42
@Hjorthenify note that answer is mostly correct; an implementation doesn't have to use vptr at all (although I've never seen one that doesn't)
also, take a look at std::tie for random cool C++ stuff
I know that function. Its crazy.
Wait what o.o
and for another mind-blow, ask yourself, what's the type of std::endl?
20:44
Some sort of stream
Nopppee
whaaaat
> template< class CharT, class Traits >
std::basic_ostream<CharT, Traits>& endl( std::basic_ostream<CharT, Traits>& os );
it's a function
as Kevin just pasted
in fact, AFAIK, all the iomanip stuff is functions
(Not tested: You can probably implement your own function with that signature and have it called as well)
20:46
^ yes you can
Cool
I know endl flushes, which is why it shouldnt be used to add newlines
yeah, unless you actually want to flush :P
The endl function thing has the benefit of calling flush on the stream as well, so you could do something similar for a new packet or whatever
there's std::flush if you just want the flush
Yeah :P
20:47
Anyway, I has the start of mapgen! And coins!
WAHEY
So now I am going to bed because bed is cool
it is
goodnight
Uuh crap
I need to hang up some laundry first
AAAH WELL
Laundry then bed
god dammit life
20:48
At this hour?
Well, I should have done it earlier
Buuut gamedev
MSVC rant of the day
template <typename T>
T f(T)
{
    return static_cast<T*>(x());asd;asd;asd;asd;asd;asd;asd;
}

int main()
{

}
^ that compiles and runs
but... x and asd is undefined?
yep :D
Is it because the template isnt evaluated?
20:51
that kinda stuff is used in the windows headers
and yeah
they delay template parsing until it's instantiated
Why is it used in win headers?
I figured
because fucking microsoft
there's stuff like this in the Windows headers
template <typename T>
T* f(T)
{
    return static_cast<T*>(x());
}

float* x() { return nullptr; }

int main()
{
    f(float());
}
What's the purpose though?
@Hjorthenify making my life hell
they define the types used in the template AFTER the template definition
20:54
Its like they are just trolling for gigs
ikr
they also make a variable called bool in one of their headers
trool*
But yeah.. wow
this is my life man
Pip
Pip
wow
Is there a container in C# where the same combined key can't be added twice? Such as if I have a pair of Vector2(1,1) and Vector(2,1) then it would access the same element even if they are reversed?
Houston, we got a problem...
(yes that is a bug)
21:36
@Hjorthenify like an std::set in C++?
Yeah
I think
Well.. std::set has the same key as value, right?
Semantically yes
@Hjorthenify HashSet is probably what you're looking for
Pip
Pip
@Hjorthenify a HashSet<T>?
sniped
No not that
21:39
Because I want to use two positions as key, but it doesn't matter which of them that comes first in the key :P
Pip
Pip
305
Q: C# Set collection?

Omar KoohejiDoes anyone know if there is a good equivalent to Java's Set collection in C#? I know that you can somewhat mimic a set using a Dictionary or a HashTable by populating but ignoring the values, but that's not a very elegant way.

Ah so you essentially want your own compariitor
Pip
Pip
that's all I got
@OMGtechy I'm afraid so
Well, I know how to in C++ ... let me dig for C#
oh that was easy
you can pass a comparitor to the constructor
21:40
Oh cool
Pip
Pip
yeah
I was going to implement my own collection :D
Pip
Pip
oh true I didn't think about that
I've used that like..... twice
@Hjorthenify oh god xD
21:40
Fun stuff
Oh well.. There's a major weird flaw in my code..
Pip
Pip
what is it?
welcome to life
13 mins ago, by Hjorthenify
user image
Basically instead of merging with the nodes close to it, it does the opposite
ahahaha
Debug.Log(ray[0].distance + " distance..");
if(ray[0].distance < MergeDistance)
And I'm like.. What
21:42
Just add a ! to whatever returns the bool and forget about it xd
but..
The ray's distance D:
Restarted Unity.. Now it worksish
At 0.5 merge distance
Pip
Pip
lol
closer
The triangle's vertexes merge, but those two at the bottom doesn't
Wtf
Pip
Pip
running the script on it correctly?
@Almo that overtime goal
21:47
Wtf not merged either
@Pip Its all 1 script
Pip
Pip
hmm idk
Maybe unity's raycast distance is broken? lol dunno
Fixed it
Nvm
always assume the library you're using is working perfectly
because 99% of the time that is the case
I was joking
ah right :P
We had an issue with JUCE that went on for years and years and and we thought Microsoft's DirectWrite was broken due to some uninitialised data, which we hacked around in a way that worked most of the time until Windows 10, but recently we discovered that it was us all along and facedesked
21:54
But then again... Im using it to check the distance between nodes and its obvious that the nodes in the triangle is spaced farther away than the one near the corner
anyway I'm off
night night
Pip
Pip
Been listening to Miami Horror and Little Boots all afternoon
Started a radio of "Que Veux-Tu" (Madeon Remix) by Yelle
on Spotify
that's such a fantastic song
@OMGtechy what was the issue?
oh, night :P
@Jon listened to the songs/artists I mentioned?
Can't figure out what's causing this bug -.-
Imma call it for tonight. Night!
Pip
Pip
22:14
nice Hjor
MLM
MLM
22:58
This answer was just posted. Their solution is using standard meshes instead of a geometry shader which is what the question is about. Consider voting appropriately: gamedev.stackexchange.com/a/107908/16587
Pip
Pip
I hate when people don't actually answer the question.....
23:41
I'm making a business card ._.
Pip
Pip
Cool
any idea what it'll look like @Chris?
I'm thinking about 3d printing a few business cards just because :D
I'm seeing about using my standard game art background and font and style. Kind of left this late but gonna see if my local shop can get some printed by Thursday, cuz the nz gamedev conf is on Friday haha. The monthly meetups I go to, I feel naked without a card lol
might list my title as "Independent Dungeon Developer"
23:58
@OMGtechy :D

« first day (1858 days earlier)      last day (3459 days later) »