OpenFunscripter - another scripting tool - 1.1.9 release

I’m aware of that one. I haven’t figured out yet how to do it and I have already sunk a couple hours into it.
Right now it’s implemented like this but I honestly have no idea what’s going on :exploding_head:
I’ll experiment some more.

Those two shouldn’t be a problem.

2 Likes

Where is the camera distance in all this? Isn’t scaling more or less a change of camera distance to the plane where the image/video is projected?

@sentinel
Can you name the video you had trouble with?

Edit
I just randomly found the correct place where to apply the zoom :raised_hands:

vec3 camDir = normalize(vec3(uv.xy * vec2(tan(0.5 * hfovDegrees * DEG2RAD), tan(0.5 * vfovDegrees * DEG2RAD)), 1.0));

It was the 1.0 in the end … :man_facepalming:
I swear I spent hours applying random multiplications everywhere but there.

WankzVR - Uma Jolie - Boober Eats
Between 29-33min you rarely see what’s happening down there and you need to use Uma:s whole body to get a feeling for when the guy thrusts and retracts.


Max zoom out JFS.


Max zoom out OFS.

@sentinel I had deliberately limited the zoom because if you zoomed out too much it would distort the video in undesired ways.
I’ll post a video or a screenshot with the new zoom once I’ve downloaded the video :eyes:

1 Like

Mouse input specifically would be a feature I would welcome. Both analog input similar to zJoyfunScripter and being able to click or ctrl-click to add a point directly onto the script.

Bonus idea: If I could “rough-in” a video using an analog method and then view that as a trace overlay and build the script by adding explicit points via clicking I think that might be a great way to get to near “frame-by-frame” quality with some of the speed benefits of on-the-fly. Or I could be completely wrong…

@sentinel Looks pretty much the same as JFS now. :relieved:
fixed

1 Like

@gagax123 It looks fantastic! Can’t wait for your next release. With this fix I can probably try scripting an entire VR-video :slight_smile:

Can you actually completely separate analog inputs from support for other controller functions like that? I was under the impression that the workflow for that method involved using the controller for other things as well. (But I could be wrong because I -don’t- script like that.)

The video player defaults to the first soft subtitles a video has, so when loading a video it’ll load the first subtitles listed (in this case is Chinese). There should be an option to switch subtitles or turn it off
OpenFunscripter_2020-10-03_22-38-18

As well, windowed mode doesn’t work properly (no window bar with the close, mimimize, and fit buttons), and it doesn’t scale to fit within the taskbar, so you could see part of the taskbar in the snip. Changing to fullscreen fixes it

@mrdoesnothingalot I wasn’t aware that subtitles are handled by default
I added a shortcut to cycle through subtitles by default it’s “J”. No subtitles is also available through that.
I fixed the window being larger than the available screen space issue. :slight_smile:

I’m going to do both things eventually. But one thing at a time please. :sweat_smile:
To me this all new. I’ve never managed used those methods in JFS productively.
It will probably take me a lot of iterations to get this stuff right.

I may try this first before I doing controller stuff. :thinking:
The first iteration will probably just be what you described as a bonus idea.

1 Like

@gagax123
I just ran into a somewhat crippling bug:

  1. Assume you open a video file in folder c:\foo and then close OFS.
  2. Delete or move the c:\foo folder.
  3. Restart OFS and select File > Open video / script.
  4. The open file dialog never appears.

Workaround: You have to create an empty c:\foo for the dialog to appear again.

@gagax123 Is it possible to turn off Windows Notifications when saving? It is a bit annoying to hear the chime when the little popup window in the lower right corner everytime I press ctrl-s. If it is possible to send a notification without triggering the sound I’m happy with that even if I get a counter on the notification icon in the Windows system tray. Otherwise the “last saved 0 minutes ago” message is good enough for me.

@gagax123 Sorry for spamming, but it is a consequence of starting to script a VR-video from scratch using OFS I guess. I start editing this post to avoid too many new posts.

Is it possible to do something about the video rendering speed when holding down left arrow key? Holding down right arrow key is much smoother and a bit faster. My video is re-encoded so it contains only full frames and is roughly 14GB in size. I know it is a third party video component, but maybe there is some setting/property to adjust that improves rendering.

Is it possible to add a control that adjust how many frames left and right key jumps? I’ve got a 60fps video and I can barely see the difference between frames sometimes making it harder to position new points. It also become a bit tedious pressing twice as many keys compared to using 30 fps, which is good enough for scripting most of the times.

I have also have an issue with up/down arrow, or maybe only up arrow key. It seems to jump incorrectly and not align to the next point and sometimes it even skip points.
Standing on the left most point in the following picture cause it to jump to the position in the picture, i.e. it skips a point. In this case the two points in the middle are both at 40%. You can also see that after the just the marker is not correctly positioned on the point.
uparrowskipsapoint

A similar case it the following scenario.
startpos
Start position

afterpressingupkey
After pressing up key once. The marker is once again not positioned on the point.
This second case seems to be reproducible in the following script if that helps.
upkeyissue.funscript (879 Bytes)

I can’t really seek exactly.
The player will always snap to the timestamp of the frame that’s closest ( which I think is a good thing ).

I assume you placed those points while the video was playing with “Smooth” enabled which circumvented that.
In the next update that shouldn’t happen anymore, points will be placed right on the frame boundaries even while playing with “Smooth” enabled. Which means they should always align when seeking to them.
Actions coming from other tools may still not be aligned with the frame times.

I removed system alerts. I hate them as well which is why they are muted on my system.
But I can’t expect everyone to mute their alerts. :thinking:

About the seeking backwards I’ll have to do some more research.
So far I just found this issue.
I’ll try the last thing commented in that issue but no promises if it’s going to improve anything.
But not in the next update probably the one after.

Configuring the left/right arrow frame seeking. I’ll also defer to v1.0.6.

Edit: :fire:v1.0.5 :fire:

1 Like

@sentinel The skipping over actions which are close together is going to be fixed 1.0.6.

I expected it to snap to a frame but I get the feeling that it doesn’t. I script frame by frame without playing the video. I rely on arrow keys to get to the spot where I want to place a point. Smooth is enabled by default and I didn’t change that.

You didn’t comment the open video / script issue. Just want to make sure you didn’t miss that.

Let me know if the issue persists in 1.0.5 ( I hope not :sweat: ).

This was the fix for the open file not working. It’s in the changelog.

Aheh, well I can’t claim I’m not biased, but…

You know what, how about this. Hey, people who use analog stuff for scripting! Do you use the controller for anything else in the process, or just for the analog aspect?

On a related note, I thought of something that would apply to any controller support - if the user has multiple devices plugged in, it’d be nice to be able to choose which one to use. And to be able to turn having the program respond to controller inputs when the window is not active on and off.

@remc_ren I don’t use any controller at all :slight_smile: I only script frame by frame.

@gagax123 Got yet another idea of a feature. If it was possible to setup a thin movable mesh grid (maybe semi transparent too) as an overlay on screen that can also be rotated. It would be similar to the simulator actually but with a grid in it. I think it would help determine the stroke lengths better. When I script I try to include the stroke length variation instead of just doing the same stroke over and over regardless. Sometimes you get a stroke length creep where the strokes gradually becomes shorter (or longer) and you hardly notice it. It can also be hard to eyeball it when both are moving around. Just an idea for a future release.

2 Likes