« first day (3927 days earlier)      last day (1091 days later) » 

2:13 PM
@Almo Hey, I recall you posting something in chat a while back about quantum mech & Bell inequalities, etc. If you want to dig more into that, I have a book recommendation: Do Dice Play God?
It doesn't cover quantum until the last chapter or so. And mostly it says "we have some strong thoughts, but there's a lot of unsettled details".
As a whole though, I found it both enjoyable & informative.
Some of the stuff about chaos I had already encountered, but it filled in around what I thought I knew with some examples & history that I was unfamiliar with.
 
Oooh, looks cool!
 
I liked it. My only gripe is the somewhat odd decimal notation used in the typesetting. Which is a pretty niche complaint.
And I don't want to oversell the quantum part. It just happened that when I got the at section this week, I had a lightbulb recollection of "oh yeah, Almo was just chatting about this!"
For some arbitrary time line value of "was just".
 
2:36 PM
:)
 
 
1 hour later…
3:58 PM
Serious game concern: As I was making the player actions, I thought, "What is going t happen for the ground? Aw shoot." Because there needs to be a ground, and it needs to be somewhat accurate. There needs to be a Pacific Ocean, and there needs to be China, Japan, and Russia. I need China because during the War, the B-29s took off from a Base in China so that they didn't have to fly all the way from America to Japan.
There needs to be Russia because fights often happen over Russia, and also because that is where the players land just before becoming POWs. I need Japan because that is where they bombed. And the Ocean is necessary for essentially realistic and navigational purposes. It'd be kinda dumb if I had no Ocean, because that'd be extremely unrealistic.
 
user92578
A lot of the ground probably doesn't need to be very realistic / detailed if we're talking about mostly air action here
 
user92578
Not like the fighters are in space and the Great Wall of China has to be visible in full
 
You can find elevation maps online, and use those to create terrain for the sections that your missions cover.
 
Thanks!
 
I'd recommend starting with something simple like that, rather than trying to stream tiles from a mapping service like Flight Simulator does. That's a whole extra ball of complexity you don't need for your first version.
 
4:04 PM
And I just use low-level clouds to mask the low-detail parts.
And for Version 1.0, I'll use basic 27-part Cubes (27 cubes put together in a 3x3x3 fashion so that the building can do a very basic falling-apart action) as buildings.
And I see now that even when I advance, those buildings are still going to be very basic, since they're getting bombed anyways, and the player won't ever actually go in them.
In my game, I realize that I am doing a whole lot more research than I thought I'd have to. Like, what a US Air Force Base looked like in the 1940's. And the schematics of the MiG-15, B-29, and P-51 Mustang (and the Zero Fighter eventually), and then some basic research on the landscape of China, Russia, and Japan.
 
How's that gameplay prototype coming along?
 
So-so
I'm still working on the basics.
And is it a problem that it takes literally 30 minutes to import my B-29, P-51, and MiG-15?
 
user92578
Sounds oddly long, are the models massive? How's the in-game performance if so?
 
Don't know yet.
Oh, and some of you may be able to help me with this: When I import the models, the colors are all wrong.
And there is no way in h--- that I'm going to assign every color. And even then, the colors don't assign right. I'll assign the white to a dark-grey (why dark grey?) wing that literally says it has white as it's material, and yet it stays dark grey.
I use the same material for the other wing, which works just fine.
 
You probably shouldn't have separate materials per colour. A usual game workflow would be to create the object as a single mesh with a UV unwrap, then assign textures that define the surface properties based on those texture coordinates - albedo for colour, normal map for fine detail, metalness/roughness for reflection behaviour, etc.
Every piece that you create as a separate mesh is (to a first approximation) a separate draw call. The more draw calls, the longer it takes to render a frame. So having planes made of tons of individual parts will limit how many of those planes you can render at a decent framerate.
 
4:20 PM
So you mean if half a surface is black and the other half is white... the surface has to pick which one?
 
In that situation you could make a texture that's black in one part and white in another, and align the surface's texture coordinates to the black part samples from the black part of the texture, and the white part samples from the white part of the texture.
You also don't need to use the same model for every plane. You might have a high-detail cockpit model for the one the player is flying, and a high-detail nose / wings they can see when they look out their windows. The rest of the plane might not even exist (in FPS games, the local player character is often just a floating pair of arms)
Other planes are seen from much farther away, so they can be lower-poly, simplified models that are completely hollow.
 
That is actually exactly what I do.
I delete all dials and switches and un-seen stuff in the NPC B-29s, and NPC P-51 Mustangs, and also the MiG-15s.
But I do keep the outside the same, so that they look the same, from what the player(s) can see.
Well, the other B-29s don't fly so far away. There are real NPCs inside, because there are parts where those NPCs exit and enter the plane. But the player cannot enter/exit the plane, which prevents them from seeing the low-detail inside. Also, the only details in the NPC B-29s are the things that one would see from a window, but even then, I still deleted all dials, which on the Flight Engineer's wall of dials, could technically be seen from the window.
But then again, it'd be an airspace violation to fly so close to the front of the B-29 (in, say, a P-51 Mustang) to be able to actually inspect the interior.
 
Do they enter/exit the plane while it's in flight?
 
Yes, actually, when the plane is going down. They can be seen escaping the plane and opening parachutes.
But not entering it.
 
Great. Load a different "bailing out of plane" model at that moment. Before then, do not have NPCs inside it.
 
4:30 PM
But they could be seen. The Bomb Aimer, for example, sits right at the front of the cockpit. And the gunners, which would clearly be noticeable from the astrodomes.
But I see your point.
I can keep the gunners, pilot, bomb aimer, and co-pilot, but remove the flight engineer and radio operator, and also the navigator.
 
That doesn't have to be a real NPC, just something human-shaped enough to look OK through the window.
 
That is actually exactly what it is.
The only ones who should be moving are the ones inside the player's plane.
Because they need to show the player that they are alive and actually controlling the plane and doing something, so they move.
I use materials with more than one color on them, like you mentioned, yet the problem still persists. Is this because I'm importing a .dae file?
I can switch to a 2018 .SKP by importing the .dae to SketchUp for Web, then exporting again as a 2018 .SKP (SketchUp Make 2017 doesn't allow me to export as .SKP)
 
I don't have enough information in this message to troubleshoot the problem. Perhaps you'd like to post a question on the main Q&A site, including all the steps to create a Minimal Complete Verifiable Example?
 
Hmm...
Great idea..
Posted it.
 
4:57 PM
I could also use very basic, "shells" for the B-29s in the "parking lot" (they were lined up on a gigantic asphalt area, almost like parked cars)
 
5:11 PM
@DMGregory should I use a "shell" plane in the game, for higher fps, but then make it change into the slightly more detailed "NPC" plane with the NPC people in it; whenever the player gets within a certain distance?
 
It sounds to me like you already understand the situations in which that would be beneficial, so you don't need to ask me that.
 
I asked because I want to know if it would be unwise to load in a different plane every time the player comes near, like, if that would slow the game down or something.
 
user92578
LOD techniques are very popular in games
 
LOD?
 
user92578
level of detail
 
5:18 PM
I see.
 
In DbD we have a character named Elodie, which sounds just like LOD. So when I say "We have an LOD problem", sometimes they're not sure which I mean. :D
 
user92578
:D
 
You might not notice it, but games - especially open world games - are swapping dozens to hundreds of models all the time as you roam around. A distant tree doesn't need as many polygons as one right next to you, so we downgrade it - sometimes all the way down to a texture "imposter" in the very far distance.
 
Right. How about this: I don't keep the bombs inside of every B-29, lagging up the game, but instead I only load them in right before the bombs are supposed to be dropped? (This won't apply to the player's plane, since there are circular windows in the pressurized bulkheads that allow access to the bomb bay, meaning that the player would notice the absence of bombs in their plane).
 
Yup. Bullets don't exist in most games until they're fired.
 
5:29 PM
Ah, I already have so many ideas for LOD stuff. Like, in the flying planes, I just delete the landing gear, and only load them in when the plane is going to land/take off. I'll just load them in as a child of the B-29, so that they move with it like they're supposed to. Same with the bombs. And the bullets.
 
For now, I'd just make your simple hollow plane mesh, as ugly and low-detail as need be, and use it to prototype your gameplay.
 
Prototype gameplay first
all the work on aesthetics is wasted if the game doesn't work for whatever reason
 
@Almo that is absolutely right.
How many stages of LOD should I have for my B-29?
 
5:44 PM
0 for now. Work on your gameplay first. LOD management comes later.
To know what kind of LOD breakdown you need, you need to have an idea of your game's performance, your typical viewing distances, etc. Stuff that can change as you develop the gameplay. So, gameplay first, realization second.
 
Ah, got it.
For real this time
Okay, so... I won't make an avatar, nor rig it, for now. This is because there is no avatar when there is only 1 player. There are only avatars when there is another person to see you.
 
Sounds sensible.
 
I did not know this was possible: test\main.cpp(118): fatal error C1001: An internal error has occurred in the compiler.
 
user92578
I hit ICE's like weekly
 
nwp
You must not be doing much C++ :D
 
user92578
5:55 PM
Usually it's too much nested template/lambda tricks
 
user92578
Fixing those is annoying because you just try random variations until it works
 
nwp
A lot of times using a different compiler helps. If you're lucky it's actually a bug in the code.
 
user92578
Yesterday the issue was implicitly captured static variables 4 nested lambdas deep
Moving 3 of the lambdas inside a function that takes the static variables as parameters worked just fine
 
@nwp I'm doing a lot of c++, but not much template stuff.
But yeah, I'm trying something new today...
 
user92578
Clang has too many initialization issues, it's really unusable for me
 
5:57 PM
And hopefully the next compiler version likes the same random variation...
 
nwp
Huh. Weird. Usually Clang is the one that gets things right the most.
 
Yeah, good idea testing thigns first. I have a Cowl Flap problem. When I rotate X, it rotates in a way I don't want. So I try Y. It rotates in a way I don't want. So I try Z, and it rotates in the same exact way that Y rotates. I can rotate it using the rotate tool, and it rotates along the red "circle" exactly how I want, and that is likely because I purposely set the origin and axes so that it would rotate how I want it to rotate. But what I don't get is why the Z is the same as the Y.
 
Cowl flaps are not important to your gunner gameplay. Work on them later.
 
No, I mean Unity Rotation.
I'm testing if I set my axes right in the model, so that I can easily work with it.
 
"Why the Z is the same as the Y" is a famous problem called Gimbal Lock. When you try to express an orientation as a trio of angles, you can get into places where two of the members of the trio share an axis - losing a degree of freedom.
 
user92578
6:00 PM
@nwp I gave up very soon after I saw this kind of basic 100% legal stuff does not compile: godbolt.org/z/4x11GshE6
 
@DMGregory How do I "unlock" it?
or at least switch the "locked" one to something else?
 
user92578
I store my Gimbal Key in the desk drawer
 
huh.
 
We probably have a hundred Q&A posts tackling this for different situations, so there's not one simple trick. Overall though, you'll have better luck if you just don't use Euler angles in the first place.
 
so how do you put the key in the lock?
 
6:03 PM
That's why everything in Unity uses quaternions under the hood. The Euler angle triples shown in the inspector are just a fiction to make some simple scene setup a little easier. Try not to touch those in code unless you're making a camera, or something with a similarly simple rotation behaviour.
You're rotating with the inspector, which shows you these fictional Euler angles to try to make it easier on our non-4-dimensional/imaginary-number brains. 😉
 
So in scripting, which one is this? :
 
nwp
@Tyyppi_77 I see. That's indeed disheartening.
 
Assuming you're in local gizmo mode, that's Transform.Rotate(x, 0, 0) - you can tell because it's red, the same colour as the x axis.
But what you likely want to do is cache the default orientation on start-up, then form your new orientation as transform.localRotation = initialOrientation * Quaternion.Euler(rotationAngle, 0, 0);
 
@DMGregory Heh, lol, I forget that all these rotations are actually on a flat screen, in an imaginary universe made with whatever is in circuits, electricity, and then shown to us using thousands of tiny squares, which are each a group of a red light, green light, blue light, and white light. None of it actually exists.
Yeah.
 
user92578
@nwp It wasn't too long ago when I tried to setup clang for additional static analysis and I don't fully recall all the issues I encountered but I think a lot of it was similar aggregate initialization(?) issues and then a bunch of reasonable missing typenames that I should probably try to fix anyways
 
6:13 PM
What I mean is that you probably don't want to manipulate points on a 4-dimensional sphere, where one of those dimensions is real and the other three are imaginary numbers, by hand.
 
I made a second B-29 Model that was entirely for reference only. By this, I mean that I rotate the landing gear, skid, etc. in SketchUp, so that I can go like "rotate to this position" in Unity.
 
nwp
Well, the missing typenames are not bad, at least they are not Clang's fault and it usually points out "missing typename here". That they can't fix those initialization bugs is really bad.
 
4 dimensions... what is number 4?
 
We usually call them w, x, y, z.
 
In Physics, 4 is Time.
 
user92578
6:14 PM
Yeah MSVC is too lenient on not using typenames so I've never had to properly learn when it is required by the standard (and then compilers that follow that part of the standard as expected)
 
user92578
The 4 quaternion dimensions don't exactly map to anything that's easy to conceptualize as was already pointed out
 
There isn't a simple mapping there. We could think of the real, w component as being a kind of measure of "not-rotated-ness", where 1 maps to "exactly where it started", 0 maps to "180 degrees rotated" and -1 maps to "rotated so far it's back to where it started again"
 
nwp
@Tyyppi_77 I kinda sorta know the rule, but it's easier to let clang tell me where to put it :D
 
Oh wait, that's right. 4 is rotation
But, there's then 6, isn't there?
 
Not exactly, because x, y, and z also encode rotation in a quaternion.
 
6:17 PM
Oh, yeah.
 
They just mostly tell you about the axis, with a little bit of angle information mixed in.
 
I wonder why someone had to make it all so complex.
 
user92578
I found that understanding complex numbers in 2D helped me grasp the generic idea of quaternions
 
It turns out quaternions make it a lot simpler.
 
huh.
 
user92578
6:18 PM
Unfortunately it turns out that 3D complex numbers don't rotate 3D points so we need 4D complex numbers for that
 
4D. Right.
 
Composing two rotations with quaternions is just a multiplication. Trying to do the same thing with Euler angles is a chalkboard full of trig and a splitting headache.
 
user92578
^ Also something that 2D complex numbers help to understand!
 
Fortunately, Unity is set up so we don't have to touch any of the underlying math inside a quaternion. We can just use convenience methods like Quaternion.AngleAxis, Quaternion.LookRotation, Quaternion.Inverse, Quaternion.FromToRotation etc.
 
user92578
@nwp If a typename goes missing in the woods but there is no compiler to spot that, does a typename actually go missing?
 
nwp
6:21 PM
I guess not. In hindsight it was a mistake to have that rule and they are working on removing the need for a lot of the typenames.
MSVC will be the first to have that implemented :D
 
user92578
Yeah, if the compiler can tell you that it's missing it probably should just be able to drop it :D
 
user92578
I kinda feel similarly about noexcept...
 
nwp
noexcept actually has a meaning though. If you made that implicit people would complain that they called that one function and suddenly their stuff is no longer noexcept. And since that is part of the type system bad things happen.
 
user92578
True, it's just kinda similar that I usually forget it and then the compiler (well, static analysis of the same compiler) tells me that I can mark something noexcept
 
nwp
You can make a similar case for constexpr, but I think there are situations where constexpr makes things worse, especially with regards to compile times.
 
6:28 PM
@Wasabi Hamilton spent the rest of his life working with Quaternions
after finding them
Certain things became so elegant with them, he was convinced they were the way forward
 
They're one of only four division algebras, which is pretty darned awesome.
Reminds me, I recently learned about Grassmann algebra, which kind of helps explain why we use the inverse transpose matrix for transforming normals, among other things.
 
It's scary how much math is out there
 
In the way a vector is an oriented length, Grassmann algebra says that a normal formed by multiplying two vectors is a "bivector", which is an oriented area. You can keep going, multiplying another vector to get an oriented volume, etc.
 
user92578
Oooh wow
 
And you can also perform intersections of lines and planes and volumes just with multiplications.
Kind of makes me want to code up some extensions to Unity's vector types to support Grassmann wedge operators... 😁 Maybe if I get into some procedural geometry stuff and I need easy intersection routines...
 
6:35 PM
:o
 
7:08 PM
People keep trying to scam me and steal my stuff on eBay. It's actually making me pretty angry.
But, I shouldn't be surprised. People will be people.
But on a positive note, I got my first customer! And they liked the product:
 
@OKprogrammer How do they do this?
 
1. Try to get you to contact outside of eBay and get you to pay outside of it. Causes eBay to be unable to track.
2. Say that they payed, then bounce an empty balance.
 
@Almo how much math is out there? Think about Physics. The stuff that keeps the universe from collapsing, literally The stuff that prevents a lightning bolt from being 200% likely to hit you in the next few minutes. The stuff that lets you walk, but keeps you from walking off the face of the earth. The stuff that allows circuits to function. All of that is calculated in equations, which use mathematics to relate one value to another value.
 
3. Get you to accidentally ship without getting payed.
 
Looks like selling on ebay is a stressful activity.
 
7:21 PM
And every physics-related event that happens out there has somewhere between 30 and 2 billion equations that would explain it to us. And, as a matter of fact, any event that ever happens is a physics-related event. So, there is math in literally everything that has and will ever happen.
 
@Vaillancourt Yes, it can. But the customer was happy, and I'm glad I made a customer satisfied.
 
@OKprogrammer Well, that's good at least.
 
Man, you know, it is so sad seeing downtown Seattle the way it is.
 
@Wasabi I have a master's in physics. :)
 
7:25 PM
:O
...
For real?
 
@Vaillancourt it's not bad if you ignore any weird requests. go strictly by Ebay's system, and it's pretty straightforward.
yes, specialized in astrophysics
would be phd except for shenanigans at the department the year I graduated
 
astrophysics? from where?
 
@Almo Ah okay, cool then!
 
U of Iowa
Met Gurnett (principle investigator on Voyager 1, 2 Cassini, Juno), and Van Allen (as in Van Allen Belts Van Allen) also PI on V1 and 2
they have a super space-physics dept
 
so you can calculate the velocity of a spacecraft after it conducted a gravitational boost using Jupiter's gravity, given the speed of the spacecraft before it encountered, and the closest point to Jupiter during the boost?
 
7:33 PM
that's classical mechanics (specifically orbital mechanics) which isn't really "space-phyusics"
space physics ius more like opacity of plasmas, how stars work, black holes, stuff like that
 
oh. right.
So you could calculate the amount of Energy released when two blackholes collide, given the speed of "impact", and diameter of the two.
 
sort of
the question ignores certain issues with how black holes work
but it's not like having such a degree means there's a list of shit you can do
it's more like I know where to look and what methods might be used to figure out such a thing
 
Amazing. Absolutely amazing. My primary interest is Space, and I want to be an Astronaut (for real, I actually want to, not just a far-off goal. I've done everything right so far)
 
here's a good example
the question sounds simple "what would happen if you threw a baseball at 0.9 the speed of light?"
but the investigation turns up a lot of weird things you wouldn't immediately think were part of the problem.
 
And, I also just love space. Like, my most favorite game that I can play on Roblox is called "Space Sailors". It is a very accurate simulation of space, and you can go to the Moon, Mars, Ceres, there's a LGSS, ISS, Proton rocket with a Soyuz in it, a Rocket I don't know that is in America, you can drive 2 different planes, skydive from a variety of heights, there are remote-controlled rovers, habs on the moon, mars, and ceres, detailed landings, mineable surfaces, Lunar Research Rovers (manned)
The list goes on.
And it's fun because I love space. Anyways, a Master Degree in Astrophysics is very impressive.
 
7:42 PM
What would be the best "opposite" classes for Drow or Tiefling?
ahh sorry wrong chatroom
 
@ChristianMartinez Thanks for making me want to play D&D again :P
 
haha, lol
 
7:57 PM
I should be good in 5-10 years ;)
Good luck with your question :)
 
8:18 PM
Heh... first attempt at deserializing a JSON thing into a struct... coliru.stacked-crooked.com/a/92b3b86d55582e91
It's not so pretty code, but it works.
 
Fun times
I think I made one of those in Unreal a while back for a job
 
Yeah; as soon as it works, it can be refined in some ways.
 

« first day (3927 days earlier)      last day (1091 days later) »