我正在使用 tkinter 在 python 中创建文本冒险,因为它很容易使用图形(按钮等)
我想添加一种效果,使文本看起来像是正在打印出来的。
def displayNextPart():
for i in buttons:
i.destroy()
global curPart
for char in story[curPart]["Text"]:
slp(.05)
w.config(text=char)
sys.stdout.flush()
Run Code Online (Sandbox Code Playgroud)
但窗口会冻结,直到完成为止,留给我的只是字符串的最后一个字符。
谁能帮我?
尝试使用p5.js库移植我在javascript中制作的内容,该库具有用于2D矢量的setMag函数
如何设置ROBLOX / lua中2D向量的大小?
function particle:update(mouseX,mouseY)
local t=(Vector2.new(mouseX,mouseY)-(self.pos)).unit.setMag(self.acc)
self.thrust=t
self.vel = self.vel + self.thrust
if self.vel.magnitude>self.maxspeed then
self.vel.unit.setMag(self.maxspeed)
end
self.pos=self.pos+(self.vel)
self.frame.Position=UDim2.new(0,self.pos.x,0,self.pos.y)
end
Run Code Online (Sandbox Code Playgroud) 所以,我正在尝试制作一个矩形网格,每个矩形网格越接近它就越透明.
使用一些基本的数学,我以为我已经得到它,但似乎我有一个奇怪的图形错误(可能?)显示在这里:
环的中间是鼠标所在的位置.
处理透明度的部分代码:
private function update(e:Event = null):void
{
for (var i:int = 0; i < buttons.length; i++) {
lightFact = getDistance(buttons[i])
lightBrightness = lightPower - (lightFact * 10)
buttons[i].alpha = lightBrightness
}
}
Run Code Online (Sandbox Code Playgroud)
getDistance只是从块到鼠标的距离.
如果重要的话,每个矩形都是一个影片剪辑.
在 github 上找到了一个带有着色器的 Unity 软体资源。由于对Unity着色器的了解有限,我不知道上述错误是什么意思。
代码(第22行是发生错误的地方,我已经标记了。):
Shader "Custom/Circle" {
Properties {
_Color ("Color", Color) = (1, 1, 1, 1)
}
SubShader {
Tags {"Queue"="Transparent" "IgnoreProjector"="True" "RenderType"="Transparent"}
ZWrite Off
Blend SrcAlpha OneMinusSrcAlpha
Pass {
CGPROGRAM
#include "UnityCG.cginc"
#pragma vertex vert_img
#pragma fragment frag
#pragma target 3.0
float4 _Color;
float4 frag(v2f_img i): COLOR {
fixed4 transparent = float4(float3(_Color),0); // << ERROR IS HERE >>
float distance = length(i.uv - float2(0.5, 0.5));
float delta = fwidth(distance);
float alpha = smoothstep(0.5, 0.5 - delta, …Run Code Online (Sandbox Code Playgroud)