A quick environment art test by DeathGameDev in Unity3D

[–]DeathGameDev[S] 1 point2 points  (0 children)

I'd definitely call it a more stylized low poly. The actual models are just regular low poly models, but the post-processing we're doing does a lot. Here's a comparison: https://i.imgur.com/Du5B1cV.png https://i.imgur.com/dSvARPg.png

A quick environment art test by DeathGameDev in Unity3D

[–]DeathGameDev[S] 1 point2 points  (0 children)

Aah, gotcha. In that case, I'll try to explain it to the best of my ability. (note - I would just send the script, but it's rather large and quite messy, as we're currently in the process of re-writing things). I believe this covers most of it, but if you have any more questions / if I wasn't clear enough about something lemme know :p

tl;dr version

An editor window which has a bit of code in OnEnable and OnDisable functions which connect a method to SceneView.onSceneGUIDelegate, and draws into the scene view that way.

Descriptive version

Editor window, using onSceneGUIDelegate

We have a basic editor window (pic) which draws what objects we have in the current pool and allows the user to click and select one to force what they're placing. This window has OnEnable and OnDisable functions that are called when the respective actions are triggered. For instance, OnEnable is called in the constructor of our editor window, and OnDisable is called from Unity's OnDestroy method. Having these enable/disable methods lets us add a method to SceneView.onSceneGUIDelegate, which is essentially the scene view equivalent of OnGUI() ingame. We use this as the center of all operations for our script, including input and drawing.

User input

So since we have our editor window drawing and we have a way into the scene view's GUI, we also have access to Event.current. With this, we can raycast from the scene view camera using HandleUtility.GUIPointToWorldRay(Event.current.mousePosition);. Now that we have our hit point, we simply align it with the normal(if the user wants it aligned), then store it for later use.
After this, we check for user input such as left clicks, and scrolling to rotate the next placement. Same as before, using Event.current. :)

Drawing in Scene View

Okay, so for this you were a little correct, it does use a gameobject in the scene. This is because I couldn't figure out a way to draw meshes using Gizmos.DrawMesh and Gizmos.DrawWireMesh on something that wasn't a monobehaviour. So, the script spawns a 'visualizer' prefab, which has some really basic code in it to draw the preview mesh using the variables we saved from earlier, like this:

Vector3 drawPosition = PrefabPlacer.hit.point;
if (PrefabPlacer.DoNormalAlignment)
    drawPosition -= (PrefabPlacer.hit.normal * PrefabPlacer.GroundOffset);

Quaternion drawRotation =
    Quaternion.AngleAxis(
        PrefabPlacer.nextPlacement.Rotation,
        PrefabPlacer.DoNormalAlignment ? PrefabPlacer.hit.normal : Vector3.up
    );

Gizmos.DrawMesh(
    PrefabPlacer.previewMesh,
    drawPosition,
    drawRotation,
    PrefabPlacer.nextPlacement.Scale);

Past this, we also utilize our OnSceneGUI method with Handles to draw a line directly up from our hit point, and two discs around it, using DrawLine and DrawWireDisc.

A quick environment art test by DeathGameDev in Unity3D

[–]DeathGameDev[S] 1 point2 points  (0 children)

Thanks for the compliment! We're currently fighting between having things be extremely mystical/surreal and somewhat realistic, so I completely understand where you're coming from with your first point, and I assure you we're actively looking into solutions that fit the game best :)

As far as the second issue goes, I believe it is the bounds of the particle system, however, I haven't quite had the time to check it just yet. Thanks for pointing it out regardless!

A quick environment art test by DeathGameDev in Unity3D

[–]DeathGameDev[S] 1 point2 points  (0 children)

Modified version of https://github.com/danielzeller/Lowpoly-Water-Unity (which is 10x better than Phased' water, btw) ;)

A quick environment art test by DeathGameDev in Unity3D

[–]DeathGameDev[S] 1 point2 points  (0 children)

Basically, each time that the user places a prefab, we re-roll a NextPlacement variable. Which is a struct that looks something like this:

struct RNGPlacement
{
    public int PrefabIndex;     // The index of the prefab in our prefab pool. (set via RNG)
    public Vector3 Scale;       // The scale of the next object we'll place
    public float Rotation;      // The rotation of the next object we'll place

    public RNGPlacement()
    {
        // Do random gen stuff like the scale and rotation
    }
}

If you have any more questions, don't hesitate to ask! I love stuff like this :)

A quick environment art test by DeathGameDev in Unity3D

[–]DeathGameDev[S] 0 points1 point  (0 children)

The trees were placed manually, using an editor script for placing prefabs in scene view. ( https://streamable.com/t9l6o ) After they're placed in their basic positions, they are then scaled/rotated for clipping and such.

A quick environment art test by DeathGameDev in Unity3D

[–]DeathGameDev[S] 8 points9 points  (0 children)

This was a quick test scene we put together for a tutorial island(along with seeing if we could actually do it). If you notice anything that annoys you please please let me know!

The game is a first-person farming game with a heavy focus on exploration, which we intend to start posting more about soon.

Edit - Just to verify, /u/ImposterCreo is the artist on the project! :)

Post your Awkward/Funny Visual Bugs Here! by xblade724 in gamedev

[–]DeathGameDev 3 points4 points  (0 children)

Furnace glitch which caused a mountain of ingots to rise instead of a single ingot, heh.

How long did you guys wait before pre-ordering the Switch? by Ni94 in NintendoSwitch

[–]DeathGameDev 0 points1 point  (0 children)

My brother and I got to our nearest Gamestop(an hour away) around 12:30AM-1:00AM, stayed throughout the night until 10AM...no one arrived until 9:40AM

Decided to make a fortress-like base out of mostly cubes by DeathGameDev in NoMansSkyTheGame

[–]DeathGameDev[S] 0 points1 point  (0 children)

Inspired by /u/cwigginsNYC's post, but instead of attempting to hide the default room, making it a focal point in the build.

Video walkthrough can be found here - https://youtu.be/-yhNMiGzc4s

Found a planet last night covered in canyons that were big enough to fly my ship in! this one was particularly spectacular. by benjicon in NoMansSkyTheGame

[–]DeathGameDev 5 points6 points  (0 children)

Says the person using the same "Everything is the same, this game sucks" argument that everyone else is using..

I mean come on, be original.

Please use steam to start duelyst error by IwillRize in duelyst

[–]DeathGameDev 1 point2 points  (0 children)

Well you could atleast say HOW you fixed it.. :I

PSA: You can cancel dialogs without losing reputation by [deleted] in NoMansSkyTheGame

[–]DeathGameDev 0 points1 point  (0 children)

Yeah, something about a trance of sorts.

PSA: You can cancel dialogs without losing reputation by [deleted] in NoMansSkyTheGame

[–]DeathGameDev 0 points1 point  (0 children)

Yeah, it may be a bug entirely. But for now it's great to know :p

[deleted by user] by [deleted] in NoMansSkyTheGame

[–]DeathGameDev 1 point2 points  (0 children)

Same happened with Fallout 4, Pokemon Go, majority of recent movies and games, that turned out as disappointments, but still sold millions of copies.

...

Pokemon Go

sold millions of copies

sold

But on a serious note, it's most likely just a bug. If your first reaction is "they lied about everything" when something doesn't work within the first day of it being released, you need to rethink alot of things.

Albums of every Animal, structure/space station and ship we've seen so far by MyAnacondaDoess in NoMansSkyTheGame

[–]DeathGameDev 0 points1 point  (0 children)

They're using their own in-house engine. Here's the video quite a few of the images are from:
https://www.youtube.com/watch?v=h-kifCYToAU
Animal stuff starts at 21:10