A Unity ID allows you to buy and/or subscribe to Unity products and services, shop in the Asset Store and participate
in the Unity community.
Discussion in 'Assets and Asset Store' started by softrare, Jun 12, 2011.
Can you play back a saved replay in WebGL?
hi I think the data i need to save is too huge。is there any idea you have to optimize this problem？i think
it's very important. thx a lot
I am using the kit to replay certain "highlights" from a past game.
With some adaptions I can set the replay position perfectly to the highlight timings but my problem is, that with each play-stop-play (as there are more than one highlight for each game) the speed of the replay increases! (up to max speed)
I tried debugging but i don't find a reason why the speed would increase with each call of play(0, true, false, true) (each play is followed by a stop() after the highlight time)
Good work on this package, congratulations.
Should be very difficult to have new Clothes in unity recorded? I guess you should store all vertex positions.
Have you planned to do that in future versions or should I make by myself.
Could you please tell a bit about the *.ezr file format? XML, or binaries (what's the serializer?)?
Hi! Thanks for your message!
Absolutely. At the moment binary is used, XML is also possible, but not activated by default. The serializer is .Net. Can you tell me whether that works for you or did you expect/hope for another setup?
Thanks again! Hope this helps.
How can you handle audio? I have audio that is triggered based on the physics so replaying will not trigger the audio. Is there a way to record start and stop of audio?
I see the overload that allows you to specify a prefab to load from resources, but what if we want to use a gameobject in the scene? My objects are dynamically created in game and can't be loaded from prefabs, but I could recreate them, then feed them to your tool if you gave me a way.
Hi! Thanks for your message!
Audio recording is not part of standard functionality, but could be integrated with a trick IF you only allow for replay forward in time with same speed as recording was done. You could just mark the frames when certain audio tracks are being replayed and do so in the corresponding function of the frame-representing class "SavedState". Sound recording is not part of the native feature set, but there is a description in the docs how you can add saveable data fairly easily.
About your second question: You're right, this is also not included natively. What you would indeed need is to have the algorithm that creates these dynamic objects referenced from where usually data from Resources folder is taken, then execute that at the appropriate spot. If you look in Object2PropertiesMapping there is a function prepareObjectForReplay() where the var gameObjectClone is filled with an instantiation of the original gameobject. I think thats the place where you should start thinking further about creating your own clone and feeding that to the original var, and take it from there.
Hope this helps!
Thank you so much, I will take a look at those functions. I appreciate your help.
Sorry for the late reply, I didn't see your answer. For some technical reasons we have decided to not use EZ, but thanks for your reactivity!
No problem at all. Thank you for your interest!
Hi, I just bought this.
How do I use this with photon networking?
In Playmaker I instantiate the player through photon instantiate, so how can I now tell
EZ-Replay to record that Player?
And Please add Playmaker actions, that would be very nice
O.k, figured it out myself.
With Playmaker I had to first find the instantiated player with find game object and then use add script to then add the object2record.cs script. Adding the script in the prefab did not work, it was magically gone when instantiated.
Now I need help or ideas.
I have a player, he is being recorded, and then played back with different dangers in the scene, I need triggers or collision on the replay object Just, so when a rigidbody hits the trigger or the other way. I can stop the animation/movement and do something else like hit damage, fall down and get up and the start the replay from that position further. I need to register when this replay moves into or through an object like another player also in replay. Sound s crazy but I have a great idea for a game and that is why I bought this asset. Sadly it doesn’t do what I want at the moment.
Please help or suggest.
Hi! Thanks for your message! Sorry you had to wait, I was not in office in the weekend. Would love to help you out, but right now, I did not really understand what you are getting at exactly. Can you re-phrase? If you have multiple queries please ask them one after the other, so not in 1 sentence Thank you very much!
Hi, this is what I would really like to be able to do.
Example: I have a player that goes through a maze and he is recorded.
Then after he is finished the recording will be played back and the player will now move exactly through the maze as he first did. (This bit works already)
But this time there maybe objects on his path like a trap or bomb. I want this recorded player to be able to set off triggers. So for example he walks into a bomb trigger, the playback can be stopped, and then the explosion, points deducted and playback continues.
How could I do that?
Thanks for any help on this.
Hi! Thanks for your message. I am sure with sufficient programming skills this can be made to work, but I wouldn't describe this as native functionality.
Hi and thanks for your reply.
I was thinking, is there no way to just have a collider on the replaying player?
That way I can just set up triggers that would just react to that collider.
Absolutely that is possible. Write into the ScriptsAndComponentsToKeepAtReplay the name of the component (in example "BoxCollider") and the replay objects will have that thing attached.
Ok, thanks. I will give that a go
Hi, ok. I tried this and it did the rigidbody but does not do the Capsule Collider.
Can you take a look, if this is the case with you too?
I tried this on my UFPS game again tonight, it still cant record and play a UFPS game, would you be able to add that feature?
1.Ok. 10 days and still no feedback.
2.Why cannot I set colliders to keep?
3.Only rigidbody works, but I need the capsule collider.
4.I paid good money for this and not even sale, so help me or money back please.
5.To make it clear, on playbak I should be able to trigger stöuff on collisions. As you give the option to keep components and scripts
6.but that does not work, as said the rigidbody does work.
7.´So keeping components is broken.
I hope that was now explaind better for you in short sentences as you asked.
And I look forward to hearing some feedback.
Sorry, it seems the forum did not notify me of your latest posts. It would have been more efficient if you talked to me through Skype, but no problem, lets see how I can help
You should absolutely be able to keep colliders. Can you send me a screenshot of what your EZR prefab with that list of components to keep?
Yes, I understand. That should be possible indeed. If you send me that screenshot I will take a look at what goes wrong.
Sorry for the delay again, this is not the first time the forum has not notified me.
Sorry also to you, I did not see your message before, the forum did not notify me.
Can you describe to me how you set up the character for recording in EZR? What is the result, so what does work and what doesn't?
I think you would need to try it yourself in UFPS, maybe the author will let you have a copy to make it work? I cannot recall the exact problem but it was not working at all.
Any plans to implement UFPS support? Would make a few peoples' christmas
Hi, I've just had a quick play with the free version and it looks good so far, but I'm after the kind of functionality which was asked 1.5 years ago. Is it possible to have a 'rolling buffer' of replay data, so it constantly records but only keeps in the buffer the last 10 seconds, so we can replay the last part of the game without having to store all the data since it started.
It seems such an obvious part of replay system, that I find it strange it doesn't have this feature? What i've tried so far, by manually recording + playing back, works really well (and is super easy to setup!) but without this rolling buffer feature it's pointless for me, and I'm assuming so many other people making sports related games or anything where you don't know what is going occur until it's already happened.
I'm tempted to get the full version to get the source and try and implement it myself, but $70 is a big investment if it's not doable, and if it was easy I guess you'd have already done it.
I am considering purchasing this asset.
Are particles fully supported yet? I notice on the reviews that one user said this 3 years ago:
"Now, you have the hard parts done. Animations and movement are now recorded. I read about particles not being fully supported. Not true. There is a basic "particle on off" record feature, so yes it is true. But if you are looking for the full "matrix effect" where particles freeze and can be scrubbed in realtime, that IS ALSO POSSIBLE. But you have to do some coding, and you must use the Shiruken particle system. The secret is to tell your particle systems to have a specific random seed, and then simulate them manually (particleSystem.Simulate(t) "
Really, what I am wondering is what are the current exclusions or limitations of your system at the point I buy it without me making any modifications? Are certain components not replayable out of the box? This will help me make an informed purchase and know if this system is suitable for our game.
Thanks a lot,
Hi , I have choosed Ez replay manager to show replays in my game . And its working great .. Everything is fine but , While loading data from file to replay its taking very long time in my android_unity .. Is there any possible way i can reduce this time span .. I am unable to show instant replays
G'day, just grabbed this replay manager, and it looks like it might not work so well in 5.5
When I drag the prefab into the scene it looks like this -
I think the editor script is broken
Any chance you could take a look at that @softrare ?
Hi! Thanks for your message. Originally only position, rotation and scale are recorded. There is an easy interface and a section in the documentation though on how to extend it for other properties.
Hope this helps!
Hi! Thanks for your message!
The only way to reduce the time it takes to save and load is to have less data recorded. So in case you extended what EZR records you might think about whether you really need all these properties, and secondly its possible to reduce the amount of frames recorded, by essentially increase the recording interval. If its too high though, you will have noticable visual changes with respect to the comparison to the original scene which was recorded. The good news is that EZR uses interpolation since the latest update and thus also a low frame rate can still look very decent.
Hi! Thanks for reporting this! There is indeed a change made by Unity in the latest versions. But all is resolved if you comment out line 26 of RealtimeReflections.cs. A pretty minor thing, has nothing to do with the asset really, only with the demo scene. I will upload that update asap. Thanks again!
Awesome! Thanks for that
You're very welcome!
Is it possible to use Cinemachine: https://www.assetstore.unity3d.com/en/#!/content/79898 active on video playback, so I can be playing a first person character, record gameplay, and then use the cinemachine camera to watch a replay
Hi! Short answer: Yes that's absolutely possible!
I'm running into trouble because a lot of my objects have scripts that depend on other scripts. So I get errors along these lines when I try to replay the scenes: Can't remove Rigidbody because handleImpact (Script) depends on it. What is the right way to go about resolving that for playback purposes?
Hi, I want to know that, can your plugin store complicated mecanim states and animation flows? because my character have few triggers and than few boolean parameters to control the animations. do your plugin rely on gameObject data or it saves screenshots for replay? This is important for me to know because it will help me decide to purchase your plugin.
Hi! Thanks for your message! Unfortunately, there is no other way. What kind of trouble do you mean you are getting into? Yes, you will see the red error messages (because Unity just does not provide a way to prevent them), but fortunately, those are harmless (despite being red or are there any other things you are experiencing?
Hi! Thanks for your message. Yes, EZR can cope with these kinds of setup because it stores the data of all children separately so in replay state it does not use the Animator at all, because it bases the replay on positions, rotations and scale of each individual (child-)transform. It uses local transform values though where applicable and only saves changes, so to minimize the amount of data to save.
I hope this answers your questions! Otherwise please get back to me!
I've been trying to apply the asset on my VR project using the Vive Headset.
I don't know why, but when I put the Object 2 record script on a human animation I get a weird error:
"IndexOutOfRangeException: Array index is out of range.
SteamVR_Controller.Input(int32 deviceIndex)(at Assets/SteamVR/Scripts/SteamVR_Controller.cs:151)"
what could possibly be the problem?
Is there any possible way to record particle effects?
Last question haha...
How can I record a head movement (where the player is looking)?
I just saw your questions now, I will answer you today Thank you for your patience!
I don't know this error. It is probably easy to fix but I would have to look at it. You can add me in skype and I could take a look at it via TeamViewer. Skypename: softrare_eu
I have not tried that personally. But a customer described part of it in his review:
Maybe thats helpful to you?
If you are talking about VR, then basically what you have to record is the camera
How easy is it to use with iOS and Android? And ccan you share the videos directly with social media once they have been saved?
Hi! Thanks for your message!
EZR does not produce a video. It is a game data recorder with which is e.g. possible to record a scene and then replay it from a totally different angle. See the example here: The recording is happening from a different angle than the replay: https://udemos.com/content/softrare/ezr-demo1/
I hope this helps!
and yes, it works very well on iOS and Android.
I just ran into an issue today that Monitor.cs conflicts with a standard .net class name with the same name. I locally renamed Monitor to EZMonitor to resolve the issue. This package should probably use a different name.