diff --git a/README.md b/README.md
index 1762ca74..a0c51c65 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,4 @@
-
+
[![appveyor status](https://ci.appveyor.com/api/projects/status/github/huxingyi/dust3d?branch=master&svg=true)](https://ci.appveyor.com/project/huxingyi/dust3d) [![travis status](https://travis-ci.org/huxingyi/dust3d.svg?branch=master)](https://travis-ci.org/huxingyi/dust3d) [![readthedocs status](https://readthedocs.org/projects/dust3d/badge/?version=latest)](http://docs.dust3d.org/en/latest/?badge=latest) [![](https://img.shields.io/twitter/follow/jeremyhu2016.svg?label=%20%40follow&style=social)](https://twitter.com/jeremyhu2016) [![](https://img.shields.io/badge/mailing%20list%20-join-blue.svg)](https://www.freelists.org/list/dust3d) [![](https://img.shields.io/discourse/https/dust3d.discourse.group/status.svg)](https://dust3d.discourse.group/) [![](https://img.shields.io/github/downloads/huxingyi/dust3d/total.svg)](http://docs.dust3d.org/en/latest/install.html)
diff --git a/ci/icon.png b/ci/icon.png
index 21ac58df..dd6791af 100644
Binary files a/ci/icon.png and b/ci/icon.png differ
diff --git a/ci/icon.xcf b/ci/icon.xcf
deleted file mode 100644
index e138083c..00000000
Binary files a/ci/icon.xcf and /dev/null differ
diff --git a/dust3d.icns b/dust3d.icns
index 4767198d..80d88e17 100644
Binary files a/dust3d.icns and b/dust3d.icns differ
diff --git a/dust3d.pro b/dust3d.pro
index d42d57bd..8e3b928d 100644
--- a/dust3d.pro
+++ b/dust3d.pro
@@ -3,6 +3,10 @@ CONFIG += release
DEFINES += NDEBUG
RESOURCES += resources.qrc
+win32 {
+ RC_FILE = dust3d.rc
+}
+
macx {
ICON = dust3d.icns
diff --git a/dust3d.rc b/dust3d.rc
new file mode 100644
index 00000000..372c00cd
--- /dev/null
+++ b/dust3d.rc
@@ -0,0 +1 @@
+IDI_ICON1 ICON DISCARDABLE "favicon.ico"
\ No newline at end of file
diff --git a/favicon.ico b/favicon.ico
new file mode 100644
index 00000000..ebf7ff25
Binary files /dev/null and b/favicon.ico differ
diff --git a/resources/dust3d-square.png b/resources/dust3d-square.png
new file mode 100644
index 00000000..d5d957df
Binary files /dev/null and b/resources/dust3d-square.png differ
diff --git a/resources/dust3d-square.xcf b/resources/dust3d-square.xcf
new file mode 100644
index 00000000..f87edf13
Binary files /dev/null and b/resources/dust3d-square.xcf differ
diff --git a/resources/dust3d-vertical.png b/resources/dust3d-vertical.png
index a8f67156..9c74e6a4 100644
Binary files a/resources/dust3d-vertical.png and b/resources/dust3d-vertical.png differ
diff --git a/resources/dust3d.png b/resources/dust3d.png
new file mode 100644
index 00000000..6e19d081
Binary files /dev/null and b/resources/dust3d.png differ
diff --git a/resources/dust3d.xcf b/resources/dust3d.xcf
new file mode 100644
index 00000000..948423a9
Binary files /dev/null and b/resources/dust3d.xcf differ