Subscribe to GameFromScratch on YouTube Support GameFromScratch on Patreon

8. 十二月 2016

 

Epic have released a hotfix for Unreal Engine, 4.14.1.  Composed entirely of fixes, over 50 issues were revolved.

 

The hotfix consists of:

Fixed in 4.14.1
Fixed! UE-35609 Delay nodes used in a macro cause subsequent macro calls during the delay to never complete
Fixed! UE-38690 Regression - Nested scene component subobjects are no longer being registered when the owning scene component is added to an existing Actor instance as an instanced component.
Fixed! UE-38835 Rename "Visual Studio '15'" to "Visual Studio 2017"
Fixed! UE-39298 UE4 and UnrealLightmass fail to build Module.SwarmInterface.cpp due to an error trying to open include file 'metahost.h' in SwarmInterface.cpp
Fixed! UE-39284 Running GenerateProjectFiles.bat -2017 completes with warnings
Fixed! UE-38898 UE4 is not compatible with Visual Studio 2017 RC
Fixed! UE-38604 PS4 Platform Staging copies debug files (not allowed)
Fixed! UE-38992 [CrashReport] UE4Editor_Core!FString::Mid() [unrealstring.h:1154]
Fixed! UE-37249 MallocPoisonProxy can result in a memory stomp for aligned allocations in Debug and Development
Fixed! UE-38991 [CrashReport] UE4Editor_Engine!FUObjectAnnotationSparse<FBoolAnnotation,1>::AddAnnotation() [uobjectannotation.h:76]
Fixed! UE-38752 Cannot Delete Folder Containing Sub Folders from Content Browser
Fixed! UE-38721 Mouse cursor position is locked to center of screen when bShowMouseCursor is false
Fixed! UE-38599 User Defined Struct Editor Hides Long Variable Lists
Fixed! UE-38706 Dropdowns display incorrectly in non 1:1 zoom in BP on Mac and PC
Fixed! UE-38806 Potential fatal assert when using a custom MID with a TextRenderComponent
Fixed! UE-39059 No scrollbar in Structure UI
Fixed! UE-39198 Limited range of motion when controlling the camera view with the mouse
Fixed! UE-11796 Deleting folders in the Content Browser will not delete them permanently from Project Folder
Fixed! UE-38925 Reimport for a single FBX with multiple meshes will add all mesh pieces instead of the single mesh.
Fixed! UE-38935 Crash with FBX Import as Skeletal Mesh
Fixed! UE-38749 Pressing enter does not appear to activate OnClicked events in UMG When a button is focused
Fixed! UE-37698 Widgets can no longer take focus after clicking somewhere other than the widget itself
Fixed! UE-36766 Crash attempting to open an asset from Aim Offset graph in Persona
Fixed! UE-38811 Camera attached to a Spring Arm jitters when put at a +90 or -90 degree angle on the Y axis.
Fixed! UE-38906 Crash when streaming in a level with a child actor
Fixed! UE-38518 Animation Blueprint: Default values cannot be changed after compiling if node is currently selected
Fixed! UE-39197 Delay node of 0.0 causes crash
Fixed! UE-39137 Crash when Dragging Skeletal Mesh with Apex Clothing into Level
Fixed! UE-38998 [CrashReport] UE4Editor_Engine!UMaterialInterface::GetBaseMaterial() [materialinterface.cpp:268]
Fixed! UE-38716 Physics are popping in Vehicle Advanced Template
Fixed! UE-38989 [CrashReport] PhysX3PROFILE_x64!physx::PxcDiscreteNarrowPhase() [pxcnpbatch.cpp:293]
Fixed! UE-38694 Landscape Grasstype warning causes log spam when landscape is streamed in or out
Fixed! UE-39278 Assertion failed: !LandscapeActor || LandscapeActor == Landscape
Fixed! UE-38900 Paper2d Plugin Content Missing from Content Browser
Fixed! UE-39120 ETC2 Android devices are no longer supported in the Google Play Store as of 4.14
Fixed! UE-37101 Xbox One: Issues updating texture subregions
Fixed! UE-35738 IPv6 implementation is not working on IOS
Fixed! UE-39420 QAGame crashes when launched onto Android
Fixed! UE-38709 Using Deferred Decal Material With Dbuffer Decal Enabled Crashes Editor
Fixed! UE-38223 Crash In Material Editor When Previewing A Node
Fixed! UE-39051 Engine crash when Scene Capture Component 2D is added to viewport with forward rendering
Fixed! UE-39123 Mac Editor crashes when opening Realistic Rendering sample - FMetalRHICommandContext::RHISetShaderUniformBuffer
Fixed! UE-38609 DFAO runs out of memory on xb1 (DX11 RHI) due to an RHI bug
Fixed! UE-38699 Material Expression comparison keys incorrect, produces duplicate code
Fixed! UE-38325 Tangent Update Feature Not Working
Fixed! UE-38768 Contact Shadow artifacts with ray lengths despite length
Fixed! UE-34264 Procedural Mesh Component Crashes on XB1
Fixed! UE-39132 Crash when adding actors to the level
Fixed! UE-38353 Crash while deleteing a UMG Animation Track referencing a deleted UMG asset with duplicated BSPs in-scene
Fixed! UE-39067 Oculus Touch controllers jitter when the gamethread runs quickly
Fixed! UE-39113 Post process material needs a full RT clear with hmd mask.
Fixed! UE-39122 Crash when Simulating in Editor after Painting Foliage
Fixed! UEVR-381 Interleaved Compositor: Execute init views before late update
Fixed! UEVR-379 Interleaved Compositor: Implementing Post-Present handoff
Fixed! UE-38670 New IsA() code can be thread-unsafe during saving

You can read more about the release here.

GameDev News

7. 十二月 2016

 

The following is a recap of major events in the world of game development for the week ending December 7th, 2016.  I do a weekly video recapping the news available here with this week’s video embedded below.  This post is a collection of links mentioned in the recap.

 

The Video

 

GameDev News

7. 十二月 2016

 

Microsoft have just released a new version of TypeScript.  TypeScript is a superset of JavaScript that ultimately compiles down to JavaScript.  It adds several features to the JavaScript language, acting as a bridge of sorts until the new version of ECMAScript is released.  The most important feature is the type system, thus the name TypeScript.  TypeScript aims to solve several of the problems JavaScriptimage developers face as their code becomes more complex.  If you want to see TypeScript in action in game development, I used it for our Phaser tutorial series.

 

So, what new features does TypeScript 2.1 bring to the table?

  • downlevel async functions
  • object rest & spread
  • keyof and Lookup types
  • mapped types
  • Partial, Readonly, Record and Pick types
  • easier imports

 

Of course many of those additions probably make very little sense without a bit of description.  Thankfully the Microsoft blog thoroughly documents all of these new features.

GameDev News

7. 十二月 2016

 

Following fast on the release of Unity 5.5, Unity 5.5.0P1 was just released.  As always the patch is available for download here.  As should be expected after a new major release, there are a number of fixes and improvements in this patch.

 

Improvements
  • Graphics: An assert message is now shown in the console for platforms that don't support linear rendering with OpenGL ES API.
  • macOS/iOS/tvOS: Enhancement to allow developers to use Xcode's manual signing paradigm by specifying a provisioning profile in Player Settings.
  • Metal: Improved handling of transparent rendering after post-opaque image effects when using MSAA.
  • Shaders: Optimized in-editor import, load time and memory usage for shaders with massive amounts of potential variants.
  • Unity Ads: Updated native binaries to version 2.0.6.
Changes
  • (855550) - Test Runner: Removed script templates for test runner (as it is not released).
Fixes
  • (833396) - AI: Fix for "!InCrowdSystem" and "!handle.IsValid()" errors seen in console when calling Warp and enabling a disabled NavMeshAgent.
  • (854739) - Android: Fixed auto-rotation on Android 4.1 and older.
  • (845646) - Android: Input.backButtonLeavesApp = true now exits gracefully.
  • (824462) - Android: The platform setting for Android plugins now defaults to "Android" instead of "Any Platform".
  • (793711) - Asset Import: Fixed an issue where deleting asset labels manually from .meta files would not be picked up by the editor.
  • (668043, 837519) - Asset Pipeline: Fixed an issue where asset and timestamp maps could get out of sync.
  • (741525) - AssetBundles: Fixed redundant asset bundles rebuild when external dll changes.
  • (853618) - Build Pipeline: VR Splash Screen texture will no longer be included when building a project for a non-VR platform.
  • (836131) - Collab: Fixed case of sign-in window getting stuck when launched from the toolbar menu.
  • (791434) - Core: Fixed hangs in the job system when running on certain platforms with a low number of cores e.g. older Windows Phones, UWP dual core machines.
  • (849022) - Editor: Fixed case of some properties being set to a single value when entering multi select mode for Trails and Lines.
  • (849138) - Editor: Fixed disappearing tab when closing 3 or more of them successively.
  • (857037) - Editor: Fixed NullReferenceException when undocking preview window.
  • (833866) - Editor: Tweaked the output of the generated Visual Studio solution file to better match Visual Studio standard format, in order to fix problems opening Unity generated projects with Rider GUI.
  • (805221, 605171) - Graphics: Disabled GPU skinning on GL and GLES based graphics APIs for desktop & mobiles.
  • (821298) - Graphics: Fix to ensure that ETC1 alpha split option only shows for ETC1 4bit format in texture importer.
  • (846989) - Graphics: Fixed a crash during shutdown when using the DX9 graphics API.
  • (829120) - Graphics: Fixed a problem where the Windows standalone would appear on a different display from that selected in the game launcher.
  • (840897) - Graphics: Fixed a problem with objects not rendering after resolution changes or entering/exiting fullscreen when using DX9 graphics API.
  • Graphics: Fixed case of the Windows player build being disabled when using linear rendering and OpenGL ES graphics API in the editor.
  • (849671) - Graphics: Fixed lightmap decoding in the editor when the target platform is mobile.
  • (823371) - Graphics: Fixed the GPU Profiler to work in the MacOS Editor using the GLcore graphics API. Can only profile a single game window whilst it is in play mode.
  • (825046, 824894) - Graphics: Fixed warped lens flare and halo effects when not in stereo.
  • (850383) - IL2CPP: A more useful error message is now returned from IL2CPP when trying to build a WebGL project with the Facebook SDK.
  • (852445) - IL2CPP: Added proper support for a class that is marshalled as a field of another class or struct, including the proper return value for a call to Marshal.Sizeof in this case.
  • (846956) - IL2CPP: Added support for managed stack traces on Android.
  • (849701) - IL2CPP: Corrected a crash that can occur in the player when a virtual method is called on a value type and that value type implements an interface which has an overload of that virtual method.
  • (845666) - IL2CPP: Corrected managed stack traces when Xcode 8 is used to build on iOS with link-time optimization enabled.
  • (847838) - IL2CPP: Fix to prevent a compiler error in generated C++ code when calling Interlocked.CompareExchange from some managed code.
  • (845174) - IL2CPP: Fix to prevent a stack overflow exception in the player at run time when an infinitely nested generic method is used.
  • (853468) - IL2CPP: Fixed an issue with attribute classes that have overridden properties.
  • (849072) - IL2CPP: Implemented the array SetValue method for arrays of nullable types.
  • (851098) - IL2CPP/Android: Fixed issue where the error output from the compiler/linker was not captured.
  • (820587) - Lighting: Fixed a problem with reflection probes updating during runtime even when "Refresh Mode" was set to "Via Scripting".
  • (812479) - Multiplayer: Fixed InvalidOperationException when selecting NeworkManager in Hierarchy for the first time.
  • (719672) - Networking: Fix to prevent using a packet size greater than defined in global config.
  • (837602) - Particles: Added animation support for simulation speed property.
  • (849084) - Particles: Fixed occasional crash when using external forces module.
  • (835334) - Physics: Continuously setting Rigidbody2D 'bodyType' or 'IsKinematic' to the same value should not cause contact recalculations; this can cause instabilities.
  • (850059) - Physics: Fixed an accuracy issue where a capsule would jitter and bounce erratically after being placed on top of a scaled mesh at specific locations when the PCM collision mode was enabled.
  • (853163) - Physics: Scaling a CapsuleCollider2D using a Transform component scale in X or Y of zero in the inspector no longer causes a warning in the console.
  • (801761) - Prefabs : Fixed an issue where a prefab instance could be incorrectly marked inactive when first loading a scene.
  • (836589) - Profiler: Fixed isse where taking a detailed memory snapshot did not work in some circumstances.
  • (759338) - Scripting: Fixed case of WaitForSeconds waiting forever when receiving NaN as the parameter.
  • (850350) - Scripting: Fixed MonoDevelop build errors when building UnityScript and Boo projects.
  • (825418) - Shaders: Automatically upgrade any shaders using unity_SpecCube1. This fixes unity_SpecCube1 related shader compile errors after a project upgrade.
  • Shaders: Fixed a problem when compiling shaders using windows style directory separator ("\") in #include paths and compiling on MacOS.
  • (814063, 812479) - Shaders: Fixed a rare problem on DX11 with NaNs happening during the depth pass of forward rendering mode, resulting in shadow artefacts.
  • (844355) - Shaders: Fixed a shader compiler crash for shaders which had extra "}" tokens in them.
  • (825408) - Shaders: Fixed crash when compiling very complex surface shaders. Optimised the memory usage during surface shader compilation.
  • (829162) - Substance: Fixed case of ProceduralTexture inspector preview sometimes showing invalid size and format.
  • (840177) - Substance: Fixed case of SubstanceArchive inspector unselecting ProceduralMaterials after being renamed.
  • (842999) - Substance: Fixed crash when loading a substance with corrupted data,
  • (840181) - Substance: Fixed issue where the emission shader parameter was not properly set on import when emission global illumination was set to realtime.
  • (819300) - UI: Fixed jittery movement when scrolling ScrollRect.
  • (826626) - UnityWebRequest: Fixed case of incorrect Content-Type request header for multipart form data in POST requests.
  • (851921) - UnityWebRequest: Fixed case of POST requests not working with empty data.
  • (850018) - UnityWebRequest: Fixed issue where escaped characters in URL would get unescaped.
  • (657131) - VCS: Fixed null reference exception that could occur after resolving an asset (e.g. prefab) whilst the asset is selected and displaying in the inspector.
  • (824508) - VR: Fixed a memory leak when using a canvas and VRFocus is lost.
  • (851967) - VR: Fixed an issue where only the shadows from the first light would render in both eyes when using single pass instancing.
  • (851891) - VR: Fixed case of error shader rendering in one eye only when using single pass instancing.
  • (845179) - VR: Fixed crash when checking for Stereo VR Device during build.
  • (822480) - Windows Store: Fixed duplicate assembly warning when building Universal 8.1.
  • (820871) - Windows: Fixed issue where Application.systemLanguage would return the region language rather than the UI language.

Correct me if I am wrong here, but didn’t Unity just blow their naming convention.  Should the patch version not be 5.5.1p1?  As in, it’s the first patch on the way to the 5.5.1 release?

GameDev News

6. 十二月 2016

 

The HTML5 powered Babylon.js 3D game engine just released version 2.5 today.  BabylonJS is open source (Apache License) and one of the best available native HTML5 3D game engines available.  I previously featured it in the Closer Look game engine series if you want more details on the engine.  We are also currently producing an in-depth BabylonJS tutorial series if you want to learn how to use this powerful engine.

 

The 2.5 release is packed full of new features, updates and fixes from the release notes:

Major updates
  • New StandardRenderingPipeline effect to support screen space lens flare and depth of field. Demo - (Julien Moreau-Mathis)
  • New HighlightLayer object to enable highlights rendering. Demo - (sebavan)
  • Babylon.js now supports right handed system with scene.useRightHandedSystem = true (deltakosh)
  • Babylon.js is now compiled with optimize-js to get faster initial load (deltakosh)
  • Canvas2D moved to a separate folder in main repo. Now you need to also include babylon.cavans2d.js to get Canvas@D feature (deltakosh)
  • New BoneIKController Demo (abow)
  • New BoneLookController Demo (abow)
  • You can now build your own version of babylon.js with gulp build-custom Doc - (deltakosh)
Updates
  • Added node.doNotSerialize to prevent specific nodes to be serialized by SceneSerializer(deltakosh)
  • Added scene.multiPick and scene.multiPickWithRay to return an array of pickedMesh objects (deltakosh)
  • Added Effect.GetVertexShaderSource() and Effect.GetFragmentShaderSource() (deltakosh)
  • New Texture.LoadFromDataString() to help loading base64 encoded textures (deltakosh)
  • Added Engine detection of the compresed texture formats supported by Hw / browser. You can specify those formats you have files for using Engine.setTextureFormatToUse(), and an appropriate one will be chosen. (Palmer-JC)
  • Added Ray.intersectsMesh, Ray.show, Ray.hide (abow)
  • Added AbstractMesh.setPivotPoint, AbstractMesh.getPivotPoint, AbstractMesh.getAbsolutePivotPoint (abow)
  • Added Debug.AxesViewer and Debug.BoneAxesViewer (abow)
  • Added Bone.getAbsolutePositionFromLocal and getLocalPositionFromAbsolute (abow)
  • Added Bone.setRotation, Bone.getRotation, Bone.setRotationQuaternion, Bone.getRotationQuaternion (abow)
  • Added Bone.getAbsolutePosition and Bone.getAbsolutePositionToRef (abow)
  • Added Bone.translate, Bone.setPosition, Bone.setAbsolutePosition (abow)
  • Added Bone.setYawPitchRoll, Bone.setRotationMatrix, Bone.setScale, Bone.setAxisAngle (abow)
  • Added Bone.rotate (abow)
  • Added Bone.scale (abow)
  • Added Camera.getDirection, AbstractMesh.getDirection, Bone.getDirection (abow)
  • Added subdivisionsX, subdivisionsY option to GroundMesh (abow)
  • New Tools.CreateScreenshot function will capture all canvas data. Previous implementation is now called CreateScreenshotUsingRenderTarget (deltakosh)
  • Cube textures are now cached by texture cache (deltakosh)
  • Added onAnimationEnd callback for sprite.playAnimation (deltakosh)
  • Added support for non square textures for sprites (deltakosh)
  • Added support for texture arrays (deltakosh)
  • Added camera.isInFrustum and camera.isCompletelyInFrustum. Can be used with meshes, submeshes and boundingInfo (deltakosh)
  • Several memory allocation reduction (benaadams)
  • Several GPU state change reduction (benaadams)
  • MapTexture: add supersample mode to double font quality. (nockawa)
  • New SPS feature : solid particle intersection with other solid particle or with any mesh particle.intersectsMesh() (jerome)
  • New invertUV parameter an all ribbon based shapes : ribbon, tube, lathe, basic and custom extrusion (jerome)
  • Text2D: new fontSuperSample setting to use high quality font (nockawa)
  • PerfCounter class added to monitor time/counter and expose min/max/average/lastSecondAverage/current metrics. Updated engine/scene current counter to use this class, exposing new properties as well to access the PerfCounter object (nockawa)
  • Better keyboard event handling which is now done at canvas level and not at window level (deltakosh)
  • New scene.hoverCursor property to define a custom cursor when moving mouse over meshes (deltakosh)
  • Canvas2D: (nockawa)
    • Performance metrics added
    • Text2D super sampling to enhance quality in World Space Canvas
    • World Space Canvas is now rendering in an adaptive way for its resolution to fit the on screen projected one to achieve a good rendering quality
    • Transparent Primitives are now drawn with Instanced Array when supported
    • New property in Canvas2D (instances) that contains all instances of canvas2d Temechon
  • WebVR Camera was updated to be conform with the current specs. (RaananW)
  • New "CubeTextureTask" function will allow you to load a CubeTexture in the assetsManager. (agallouin)
  • Scene.stopAnimation has now an optional second parameter, the name of the animation to kill. Usefull if a mesh has multiple animations. (agallouin)
Bug fixes
  • Fixed issue with SkeletonViewer not displaying correctly with meshes that have a PoseMatrix (abow)
  • Fixed issue with Quaternion.toEulerAnglesToRef (abow)
  • Fixed issue with Animatable.goToFrame (abow)
  • Fixed issue with instancse and viewports (deltakosh)
  • Fixed issue with FreeCamera not working in fullscreen or when pointer locked (abow)
  • MapTexture: Font Characters are now correctly aligned on Chrome (nockawa)
  • Fixed some missing parameter default values in MeshBuilder.CreateGroundFromHeightMap() and MeshBuilder.CreateTiledGround() (jerome)
  • Fixed cross vector calculation in _computeHeightQuads() that affected all the GroundMesh.getHeightAtCoordinates() and GroundMesh.getNormalAtCoordinates() methods (jerome)
  • Fixed Mesh.CreateDashedLines() missing instance parameter on update (jerome)
  • Added BBox update on each ribbon based shape (ribbon, tube, extrusion, etc) on dynamic updates (jerome)
  • Fixed model shape initial red vertex color set to zero not formerly being taken in account in the SolidParticleSystem (jerome)
  • Fixed billboard when the SPS mesh is parented in the SolidParticleSystem (jerome)
  • Fixed RenderTargetTexture meshes selection (deltakosh)
  • Fixed camera speed computation (deltakosh)
  • Fixed bug with instances, LOD and edgesRendering (deltakosh)
  • Canvas2D: (nockawa)
    • WorldSpaceCanvas2D:
      • Intersection/interaction now works on non squared canvas
    • Primitive:
      • ZOrder fixed in Primitives created inline
      • Z-Order is now correctly distributed along the whole canvas object graph
    • Sprite2D:
      • texture size is now set by default as expected
      • can have no id set
    • Text2D:
      • Fix bad rendering quality on Chrome
      • Rendering above transparent surface is now blending correctly
Breaking changes
  • FollowCamera.target was renamed to FollowCamera.lockedTarget to avoid conflicts (deltakosh)
  • Removed legacy shaders support (deltakosh)
  • Canvas2D: (nockawa)
    • WorldSpaceCanvas2D:
      • WorldSpaceRenderScale is no longer supported (deprecated because of adaptive feature added).

GameDev News

Month List

Popular Comments

Meridian 59 open sourced and released under GPL
Subscribe to GameFromScratch on YouTube Support GameFromScratch on Patreon


Home > News >

18. September 2012

 

I just read on Reddit  that Meridian 59 has been open sourced and hosted on Github.  I took a quick look at the code and it was written in straight C and appears to be quite clean and easy to read, at least, as readable as Win32 C code can be!

 

If you have never heard of Meridian59, it was one of the first MMORPG’s that was published by the now defunct 3D0 Company.  In fact, it was the first commercial 3D MMO released.  The company that developed it went under, then another company went took over and later went under as well.  However they have managed to keep the servers running in a non-commercial capacity and people are still playing to this very day.  Always awesome to see people release commercial source code, even slightly older code.  There aren’t too many MMO’s open sourced.

 

Getting it to build might be a bit of a trick though.  Parts haven’t been open sourced, specifically the compression library and audio library, although I believe they are provided in binary form.

 

Perhaps the biggest gotcha is going to be building the room editor, which requires Borland 4.5!!! to build.  Ironically I think I have a copy on disk somewhere, as Borland C++ was the compiler of choice when I was in University.  The remaining code compiles with Visual Studio 2008.

 

So, if you ever wanted to peek behind the curtain on a commercial MMO, here’s your chance!

News

blog comments powered by Disqus

Month List

Popular Comments