Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
尘离序散
obs-studio
提交
959bdda4
O
obs-studio
项目概览
尘离序散
/
obs-studio
与 Fork 源项目一致
从无法访问的项目Fork
通知
30
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
O
obs-studio
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
959bdda4
编写于
3月 14, 2018
作者:
S
Shaolin
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
UI: Adjust multiview label size
上级
b4d2d5d9
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
22 addition
and
11 deletion
+22
-11
UI/window-projector.cpp
UI/window-projector.cpp
+22
-11
未找到文件。
UI/window-projector.cpp
浏览文件 @
959bdda4
...
@@ -235,7 +235,15 @@ static inline void renderVB(gs_effect_t *effect, gs_vertbuffer_t *vb,
...
@@ -235,7 +235,15 @@ static inline void renderVB(gs_effect_t *effect, gs_vertbuffer_t *vb,
static
inline
uint32_t
labelOffset
(
obs_source_t
*
label
,
uint32_t
cx
)
static
inline
uint32_t
labelOffset
(
obs_source_t
*
label
,
uint32_t
cx
)
{
{
uint32_t
w
=
obs_source_get_width
(
label
);
uint32_t
w
=
obs_source_get_width
(
label
);
w
=
uint32_t
(
float
(
w
)
*
0.5
f
);
int
n
;
// Number of scenes per row
switch
(
multiviewLayout
)
{
default:
n
=
4
;
break
;
}
w
=
uint32_t
(
w
*
((
1.0
f
)
/
n
));
return
(
cx
/
2
)
-
w
;
return
(
cx
/
2
)
-
w
;
}
}
...
@@ -393,27 +401,27 @@ void OBSProjector::OBSRenderMultiview(void *data, uint32_t cx, uint32_t cy)
...
@@ -393,27 +401,27 @@ void OBSProjector::OBSRenderMultiview(void *data, uint32_t cx, uint32_t cy)
sourceX
=
thickness
;
sourceX
=
thickness
;
sourceY
=
halfCY
+
thickness
;
sourceY
=
halfCY
+
thickness
;
labelX
=
offset
;
labelX
=
offset
;
labelY
=
halfCY
*
1.8
f
;
labelY
=
halfCY
*
1.8
5
f
;
if
(
program
)
{
if
(
program
)
{
sourceY
=
thickness
;
sourceY
=
thickness
;
labelY
=
halfCY
*
0.8
f
;
labelY
=
halfCY
*
0.8
5
f
;
}
}
break
;
break
;
case
MultiviewLayout
::
VERTICAL_RIGHT_8_SCENES
:
case
MultiviewLayout
::
VERTICAL_RIGHT_8_SCENES
:
sourceX
=
halfCX
+
thickness
;
sourceX
=
halfCX
+
thickness
;
sourceY
=
halfCY
+
thickness
;
sourceY
=
halfCY
+
thickness
;
labelX
=
halfCX
+
offset
;
labelX
=
halfCX
+
offset
;
labelY
=
halfCY
*
1.8
f
;
labelY
=
halfCY
*
1.8
5
f
;
if
(
program
)
{
if
(
program
)
{
sourceY
=
thickness
;
sourceY
=
thickness
;
labelY
=
halfCY
*
0.8
f
;
labelY
=
halfCY
*
0.8
5
f
;
}
}
break
;
break
;
case
MultiviewLayout
::
HORIZONTAL_BOTTOM_8_SCENES
:
case
MultiviewLayout
::
HORIZONTAL_BOTTOM_8_SCENES
:
sourceX
=
thickness
;
sourceX
=
thickness
;
sourceY
=
halfCY
+
thickness
;
sourceY
=
halfCY
+
thickness
;
labelX
=
offset
;
labelX
=
offset
;
labelY
=
halfCY
*
1.8
f
;
labelY
=
halfCY
*
1.8
5
f
;
if
(
program
)
{
if
(
program
)
{
sourceX
+=
halfCX
;
sourceX
+=
halfCX
;
labelX
+=
halfCX
;
labelX
+=
halfCX
;
...
@@ -423,7 +431,7 @@ void OBSProjector::OBSRenderMultiview(void *data, uint32_t cx, uint32_t cy)
...
@@ -423,7 +431,7 @@ void OBSProjector::OBSRenderMultiview(void *data, uint32_t cx, uint32_t cy)
sourceX
=
thickness
;
sourceX
=
thickness
;
sourceY
=
thickness
;
sourceY
=
thickness
;
labelX
=
offset
;
labelX
=
offset
;
labelY
=
halfCY
*
0.8
f
;
labelY
=
halfCY
*
0.8
5
f
;
if
(
program
)
{
if
(
program
)
{
sourceX
+=
halfCX
;
sourceX
+=
halfCX
;
labelX
+=
halfCX
;
labelX
+=
halfCX
;
...
@@ -490,13 +498,14 @@ void OBSProjector::OBSRenderMultiview(void *data, uint32_t cx, uint32_t cy)
...
@@ -490,13 +498,14 @@ void OBSProjector::OBSRenderMultiview(void *data, uint32_t cx, uint32_t cy)
continue
;
continue
;
offset
=
labelOffset
(
label
,
quarterCX
);
offset
=
labelOffset
(
label
,
quarterCX
);
cx
=
obs_source_get_width
(
label
);
cy
=
obs_source_get_height
(
label
);
gs_matrix_push
();
gs_matrix_push
();
gs_matrix_translate3f
(
sourceX
+
offset
,
gs_matrix_translate3f
(
sourceX
+
offset
,
(
quarterCY
*
0.8
f
)
+
sourceY
,
0.0
f
);
(
quarterCY
*
0.85
f
)
+
sourceY
,
0.0
f
);
drawBox
(
cx
,
cy
+
int
(
quarterCX
*
0.015
f
),
labelColor
);
gs_matrix_scale3f
(
hiScaleX
,
hiScaleY
,
1.0
f
);
drawBox
(
obs_source_get_width
(
label
),
obs_source_get_height
(
label
)
+
int
(
quarterCX
*
0.015
f
),
labelColor
);
obs_source_video_render
(
label
);
obs_source_video_render
(
label
);
gs_matrix_pop
();
gs_matrix_pop
();
}
else
{
}
else
{
...
@@ -541,6 +550,7 @@ void OBSProjector::OBSRenderMultiview(void *data, uint32_t cx, uint32_t cy)
...
@@ -541,6 +550,7 @@ void OBSProjector::OBSRenderMultiview(void *data, uint32_t cx, uint32_t cy)
// Draw the Label
// Draw the Label
gs_matrix_push
();
gs_matrix_push
();
gs_matrix_translate3f
(
labelX
,
labelY
,
0.0
f
);
gs_matrix_translate3f
(
labelX
,
labelY
,
0.0
f
);
gs_matrix_scale3f
(
hiScaleX
,
hiScaleY
,
1.0
f
);
drawBox
(
obs_source_get_width
(
previewLabel
),
drawBox
(
obs_source_get_width
(
previewLabel
),
obs_source_get_height
(
previewLabel
)
+
obs_source_get_height
(
previewLabel
)
+
int
(
halfCX
*
0.015
f
),
labelColor
);
int
(
halfCX
*
0.015
f
),
labelColor
);
...
@@ -568,6 +578,7 @@ void OBSProjector::OBSRenderMultiview(void *data, uint32_t cx, uint32_t cy)
...
@@ -568,6 +578,7 @@ void OBSProjector::OBSRenderMultiview(void *data, uint32_t cx, uint32_t cy)
// Draw the Label
// Draw the Label
gs_matrix_push
();
gs_matrix_push
();
gs_matrix_translate3f
(
labelX
,
labelY
,
0.0
f
);
gs_matrix_translate3f
(
labelX
,
labelY
,
0.0
f
);
gs_matrix_scale3f
(
hiScaleX
,
hiScaleY
,
1.0
f
);
drawBox
(
obs_source_get_width
(
programLabel
),
drawBox
(
obs_source_get_width
(
programLabel
),
obs_source_get_height
(
programLabel
)
+
obs_source_get_height
(
programLabel
)
+
int
(
halfCX
*
0.015
f
),
labelColor
);
int
(
halfCX
*
0.015
f
),
labelColor
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录