I have several sprite nodes in my scene that are casting shadows. I also have a sprite that is in one of the shadows. I want to be able to tell if the user moves a sprite out of a shadow into the light. Anyway to do this in swift? Thanks.
iOS 8 detect if SKSpriteNode is lit by SKLightNode
258 views Asked by Phoxoey At
1
There are 1 answers
Related Questions in IOS
- URLSession requesting JSON array from server not working
- Incorrect display of LinearGradientBrush in IOS
- Module not found when building flutter app for IOS
- How to share metadata of an audio url file to a WhatsApp conversation with friends
- Occasional crash at NSURLSessionDataTask dataTaskWithRequest:completionHandler:
- Expo Deep linking on iOS is not working (because of Google sign-in?)
- On iOS, the keyboard does not offer a 6-character SMS code
- Hi, there is an error happened when I build my flutter app, after I'm installing firebase packages occurs that error
- The copy/paste functionalities don't work only on iOS in the Flutter app
- Hide LiveActivityIntent Button from Shortcuts App
- While Running Github Actions Pipeline: No Signing Certificate "iOS Development" found: No "iOS Development" signing certificate matching team ID
- Actionable notification api call not working in background
- Accessibility : Full keyboard access with scroll view in swiftui
- There is a problem with the request entity - You are not allowed to create 'iOS' profile with App ID 'XXXX'
- I am getting "binding has not yet been initialized" error when trying to connect firebase with flutter
Related Questions in SWIFT
- Navigate after logged in with webservice
- URLSession requesting JSON array from server not working
- When using onDrag in SwiftUI on Mac how can I detect when the dragged object has been released anywhere?
- Protect OpenAI key using Firebase function
- How to correct error: "Cannot convert value of type 'MyType.Type' to expected argument type 'Binding<MyType>'"?
- How to share metadata of an audio url file to a WhatsApp conversation with friends
- Using @Bindable with a Observable type in SwiftUI
- How to make a scroll view of 9 images in a forEach loop open on image 6 if image 6 is clicked on from a grid?
- Using MTLPixelFormat.rgba16Float results in random round-off errors
- Search and highlight text of current text in PDFKit Swift
- How is passing a function as a parameter related to escaping autoclosure?
- Actionable notification api call not working in background
- Custom layout occupies all horizontal space
- Is it possible to fix slow CKAsset loading on Cloudkit?
- Thread 1: Fatal error: Unexpectedly found nil while implicitly unwrapping an Optional value - MapView.isMyLocationEnabled
Related Questions in SKSPRITENODE
- Changing a texture on a custom spritenode class drops the framerate, but only the first time?
- Sprite from SKScene not running actions
- Flag when two sk nodes intersect
- SKSpriteNode passing through SKShapeNode with multiple paths and high speed in Swift SpriteKit
- Swift. SKSpriteNode as a button
- what way can i adjust the position of an skspritenode when it's frame intersects another skspritenode's to prevent them from overlapping?
- is it okay to call a run SKAction method inside of the update function?
- Why won't my fragment shader apply to the texture of my door object node in the view of the scene in spritekit?
- How to use SKScene's didBegin to detect when Sprite Node hits enclosure?
- How can I properly rotate SKSpriteNodes about a point other than the origin?
- Can you add a UIButton be used as the UI for a SKSpriteNode?
- Swift: SKNode `contains(_:)` not always working
- Can setScale() on an SKCameraNode exclude certain children?
- Is there a way to extract info from the .sks file, e.g. a SKSpriteNode’s position?
- CIGaussianFilter is not centering effect
Related Questions in SKLIGHTNODE
- SKLightNode causes crash if added too soon with SKSpriteNode
- SpriteKit progressive darkness in the Scene
- Lighting glitch when trying to create a fog of war with a light node
- Use multiple LightNodes
- SKLightNode's shadow doesn't hide sprites
- SKLightNode woes: light not applying to all expected nodes
- How can I achieve a node that will desaturate everything below it?
- How to create mirror effect in SpriteKit
- Spritekit game crashes (because of SKLightNode threading issue?)
- SKLightNode: Changing alpha of ambientColor
- How to implement effect when SKSpriteNode is transparent but become visible with light?
- How to increase the size of an SKLightNode in iOS
- SKLightNode not showing up in Sprite Kit
- SKSpriteNode lighting doesn't work with textures from SKTextureAtlas
- iOS 8 detect if SKSpriteNode is lit by SKLightNode
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Unfortunatly this functionality still isn't included in SpriteKit, however it is possible to implement a decent solution with some caveats.
To determine if a sprite casts a shadow, its
shadowCastBitMaskproperty "is tested against the light'scategoryBitMaskproperty by performing a logical AND operation." SpriteKit appears to generate the exact same mask data for lighting and physics body calculations, based on the description given in the documentation for theshadowColorproperty defined onSKLightNode:SKPhysicsWorldhas a method,enumerateBodies(alongRayStart:end:using:), for performing this kind of ray intersection test performantly. That means we can test if a sprite is shadowed by any sprite with a physics body. So we can write a method like this to extendSKSpriteNode:We can also retrieve which lights in the scene are lighting a particular sprite:
It'd be great if SpriteKit provided a way to retrieve this information without coupling it to the physics API, or else requiring developers to roll their own ray cast implementations.