Defold 1.2.147 has been released

Got quite similar problem on attempt to upload the new build to Appstore:

Changing DTPlatformVersion was enough, even without adding landscape launch images (I have only portrait-oriented ones)

1 Like

On this build i have a problem. I can’t build iOS bundle with native extension

Error Output
Failed to build engine remotely: Error in ‘admob/ext.manifest’: Invalid lib - ‘libs’: ‘z’

ext.manifest:
name: “admob”

platforms:

arm64-ios:
    context:
        frameworks: ["AdSupport", "AVFoundation", "AVKit", "AudioToolbox", "CFNetwork", "CoreData", "CoreGraphics", "CoreLocation", "CoreMedia", "CoreMotion", "CoreTelephony", "EventKit", "EventKitUI", "Foundation", "GLKit", "ImageIO", "JavaScriptCore", "MapKit", "MediaPlayer", "MediaToolbox", "MessageUI", "MobileCoreServices", "PassKit", "QuartzCore", "SafariServices", "Security", "Social", "StoreKit", "SystemConfiguration", "Twitter", "UIKit", "WebKit"]
        flags:      ["-stdlib=libc++"]
        linkFlags:  ["-ObjC"]
        libs:       ["z", "c++", "sqlite3", "xml2"]

armv7-ios:
    context:
        frameworks: ["AdSupport", "AVFoundation", "AVKit", "AudioToolbox", "CFNetwork", "CoreData", "CoreGraphics", "CoreLocation", "CoreMedia", "CoreMotion", "CoreTelephony", "EventKit", "EventKitUI", "Foundation", "GLKit", "ImageIO", "JavaScriptCore", "MapKit", "MediaPlayer", "MediaToolbox", "MessageUI", "MobileCoreServices", "PassKit", "QuartzCore", "SafariServices", "Security", "Social", "StoreKit", "SystemConfiguration", "Twitter", "UIKit", "WebKit"]
        flags:      ["-stdlib=libc++"]
        linkFlags:  ["-ObjC"]
        libs:       ["z", "c++", "sqlite3", "xml2"]

How can i solve this issue? (on previous editor no problem with this)

Ah… the irony.
In an attempt to make the allowed libraries accept all library names, it seems I accidentally made it disallow any libraries that are only 1 character long (“z”).

I should be able to fix this server side tomorrow.
As a workaround for now you could try adding an custom zlib implementation (.a) in you library folder, and let it link against that instead.

EDIT: Btw, is this perhaps a public extensions? If so, I can add it to list of extensions we test build against to make sure we don’t accidentally break stuff.
I’m really sorry for this regression.

4 Likes

This release version means upgraded OpenGL ES to 3.0 ? Does it support dFdx/dFdy ?

Even though I read the patch notes I was still confused when our game’s sprites were suddenly blurry even though we didn’t change anything about them.

texture_sampler

Very glad that you unified this across all of the texture types!

2 Likes

No, it’s still the same version. The thing that has changed is that the shaders you write must be compatible with GLSL3.1, meaning that certain variable names that were previously accepted (like “texture”) are now reserved keywords that you are no longer allowed to use as variable names. This is the only difference.

Point taken, we will make a bigger effort next time to improve the notification around the larger changes.

Thank you. Can you consider support tangent and OpenGL ES 3.0 or Vulkan ?

Yes, this is a first step towards a more modern rendering api. In fact, this change is due to the fact that Apple deprecated the OpenGL implementation, and we need to support Metal. One way to do that is to use MoltenVK, and if that goes well, we’re one big step closer to Vulkan support. That’s the idea anyways, and it’s slowly progressing.

4 Likes

So, I think that 3d games need tangent, this is a simple thing, if it don’t provide tangent, we lose some graphics technology like normal mapping, parallax mapping and SSAO.

2 Likes

Thanks for answer.

We use public extension - https://www.defold.com/community/projects/93085/

How can I do this?

By simply prefixing the include:

#include  <extension_folder_name/include/foo/bar.h>

I mentioned it a little bit here

Thank you,I’ll try it out.

1 Like

The above fix for iOS deployment still didnt work. It removed the 2 last errors (90474 and 90475) but still there is the iPhone 5 launch image that I cannot set or even find in game.project. It still complains about that one:

ERROR ITMS-90096: "Your binary is not optimized for iPhone 5 - New iPhone apps and app updates submitted must support the 4-inch display on iPhone 5 and must include a launch image referenced in the Info.plist under UILaunchImages with a UILaunchImageSize value set to {320, 568}. Launch images must be PNG files and located at the top-level of your bundle, or provided within each .lproj folder if you localize your launch images. Learn more about iPhone 5 support and app launch images by reviewing the ‘iOS Human Interface Guidelines’ at https://developer.apple.com/ios/human-interface-guidelines/graphics/launch-screen."

1 Like

Here’s a screenshot from our test app we used to upload to iTunes Connect.

I’m guessing you haven’t specified all the required launch images?
Note that Apple uses “multiple of”-paradigm to sometimes specify the sizes.
E.g. 2@ (320x568) is in fact (640x1136)

And here’s a list of all the launch images we set:

app_icon_120x120 = /assets/app_icons/icon_120.png
app_icon_180x180 = /assets/app_icons/icon_180.png
app_icon_76x76 = /assets/app_icons/icon_76.png
app_icon_152x152 = /assets/app_icons/icon_152.png
app_icon_57x57 = /assets/app_icons/icon_57.png
app_icon_114x114 = /assets/app_icons/icon_114.png
app_icon_72x72 = /assets/app_icons/icon_72.png
app_icon_144x144 = /assets/app_icons/icon_144.png
app_icon_167x167 = /assets/app_icons/icon_167.png
launch_image_320x480 = /assets/launch_images/ios_launch_320x480.png
launch_image_640x960 = /assets/launch_images/ios_launch_640x960.png
launch_image_640x1136 = /assets/launch_images/ios_launch_640x1136.png
launch_image_750x1334 = /assets/launch_images/ios_launch_750x1334.png
launch_image_768x1024 = /assets/launch_images/ios_launch_768x1024.png
launch_image_1536x2048 = /assets/launch_images/ios_launch_1536x2048.png
launch_image_1024x768 = /assets/launch_images/ios_launch_1024x768.png
launch_image_1242x2208 = /assets/launch_images/ios_launch_1242x2208.png
launch_image_2208x1242 = /assets/launch_images/ios_launch_2208x1242.png
launch_image_2048x1536 = /assets/launch_images/ios_launch_2048x1536.png
launch_image_2048x2732 = /assets/launch_images/ios_launch_2048x2732.png
launch_image_2732x2048 = /assets/launch_images/ios_launch_2732x2048.png
launch_image_1334x750 = /assets/launch_images/ios_launch_1334x750.png
launch_image_1125x2436 = /assets/launch_images/ios_launch_1125x2436.png
launch_image_2436x1125 = /assets/launch_images/ios_launch_2436x1125.png
1 Like

Well, we have actually set all the images in that list (just as you are showing). Might be that we are not really following the exact size on the images (which totally worked fine until this point). I will try and see if it becomes better if having the exact correct size of the png.

2 Likes

We’ve now deployed a new server with a fix for this, so please try again :slight_smile:

Sorry for the inconvenience!

4 Likes

If shaders are now GLSL3.1 compatible, can we have gl_VertexID now please?

1 Like

We’ve added ticket DEF-3796 for this.

3 Likes