Comments (13)
I have not looked into that yet. The default engine is Direct2D, and everything is writing to a render target. If Direct2D enable you to blur something that has already been rendered to a render target, then your idea is doable. Do you have any idea?
from gacui.
How do you achieve crossplatform with D2D? Maybe you should reference NoesisGUI because it supports various render backend as well as Data-binding like WPF.
I think if u implement the UI lib with a set of stable backend APIs then it's possible to be crossplatform with the same codebase.
As for blur, if u get the render buffer and apply blur algorithm onto that bitmap, then it should be done. Shader might be a good way to go.
I don't know the difference between NoesisGUI and GacUI, sorry for that because I am only familiar with limited Game GUIs.
As a developer, I would like to have a slim GUI library which can switch difference themes(2k, xp, win7) in one line of code, also plenty ui effects to choose.
from gacui.
@sekkit if you take a look at iGac repo you will find out that I achieve cross platform by writing different renderers and windowing provider for each platform I want to support. But unfortunately the maintainer of iGac are not working so the progress doesn't catch up. I get some idea from WPF actually.
So for the blur feature, I need to solve it for each platform if I want to add it.
GacUI are going to be able to switch between themes by calling one function but it is not done yet. The good news is, all fundamental building blocks are done, I just need to write a recursive function to tell the control tree to switch the theme. The bad news is that, I didn't create those 2k xp and win7 themes. Maybe someday I will do that, or maybe users will create by themselves.
from gacui.
@sekkit you can track my progress by reading this file
By the way, for the blur feature, are you really want the native aeroglass in Win7, or just simulating aeroglass?
from gacui.
OS independent, 就是跨平台的aeroglass
from gacui.
FlashGet 3可以一键切Xp主题(内置的),很漂亮。
Win的主题除了Win8,10,其它都好看。Win10之后微软的GUI已经没有审美了。
如果没有内置的话,我感觉跟wpf比没啥区别,不同平台做个UI现在已经不是个难事, 哪怕是Electron都有不错的效果。
NeosisGUI,这个也是c++/xaml的,你要不也扩展下游戏领域~~
from gacui.
@sekkit 皮肤可以慢慢做,Windows游戏开发的话,Direct2D跟Direct3D10以上都是兼容的,算燃气可以直接用,换个window provider就好了。aeroglass肯定还是尽量寻求操作系统支持,据说Win8之后已经没有这个功能了。
from gacui.
glass8.eu -- AeroGlass Plugin for Win10
www.mactype.net -- freetype rendering for Windows
本质上就是个Gaussian Blur + 颜色混合吧,我觉得第三方能实现的话,其实就是个方法和效率的问题了。我都用QT实现过,有点卡。但是那个插件不卡。
如果装了Win7,那直接调DwmEnableComposition API好了,我说的是,在任何PC系统上,直接Show出Win7风格的效果~~~
因为本人做业余小项目一定会遇到这些问题,所以就提了下,当然这不是刚需。
顺便还可以加个TextShadow效果,这个用qt很容易实现,gac也可以弄一个。
MacOS like 磨砂效果~~QT弄的,GacUI也可以有。以上都是纯矢量的绘制,如果用位图来做性能应该会好点。
from gacui.
你怎么画的,真的是取背景图自己磨砂吗?说来这个算法还是Unity的面试题来着(逃
from gacui.
Nope. http://doc.qt.io/qt-5/graphicaleffects.html GUI直接有。自己实现的效率不一定好~
以前试过WPF在非Win7上实现磨砂效果,性能很差,这些消耗高的算法应该做在c++层吧
from gacui.
得用D3D写shader做,不能直接CPU坐的
from gacui.
from gacui.
maybe should use stackblur / boxblus instead of guassian blur
from gacui.
Related Issues (20)
- C++: error "explicit specialization in non-namespace scope" HOT 10
- 有虚表控件吗 HOT 1
- demo窗口界面的最大化图标错误 HOT 3
- x64下崩溃问题的原因找到了 HOT 3
- Window drag to smallest size glich in dpi:125%
- Fix tutorials about setting client size requirement HOT 13
- 界面刷新问题 HOT 7
- 界面缩放异常 HOT 1
- 合成规则 HOT 3
- failed to run GacBuild.ps1 against a commented Resource.xml HOT 1
- 制作自己额外的控件 HOT 2
- Some people like to have preedit support in textbox HOT 1
- ShowModal glitch cause the owner window to suddenly disappear and recover
- Will android and ios support come? HOT 1
- Global keyboard shortcut support
- cubic bezier animation for workflow
- infinite loop of arranger ensurevisible
- click on element of AssociatedHitTestResult="Title" cause window lostfocus HOT 1
- reset selectedItemIndexStart and selectedItemIndexEnd on selection clear
- skip setfocus on focused composition
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from gacui.